Advertisement
Guest User

GL11 in LWJGL 3.0

a guest
Dec 30th, 2012
424
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 449.82 KB | None | 0 0
  1. /*
  2.  * Copyright LWJGL. All rights reserved.
  3.  * License terms: http://lwjgl.org/license.php
  4.  * MACHINE GENERATED FILE, DO NOT EDIT
  5.  */
  6. package org.lwjgl.opengl;
  7.  
  8. import org.lwjgl.*;
  9. import org.lwjgl.system.*;
  10.  
  11. import java.nio.*;
  12.  
  13. import static org.lwjgl.system.APIUtil.*;
  14. import static org.lwjgl.system.Checks.*;
  15. import static org.lwjgl.system.MemoryUtil.*;
  16.  
  17. /** The core OpenGL 1.1 functionality. */
  18. public final class GL11 {
  19.  
  20.     /** AccumOp */
  21.     public static final int
  22.         GL_ACCUM  = 0x100,
  23.         GL_LOAD   = 0x101,
  24.         GL_RETURN = 0x102,
  25.         GL_MULT   = 0x103,
  26.         GL_ADD    = 0x104;
  27.  
  28.     /** AlphaFunction */
  29.     public static final int
  30.         GL_NEVER    = 0x200,
  31.         GL_LESS     = 0x201,
  32.         GL_EQUAL    = 0x202,
  33.         GL_LEQUAL   = 0x203,
  34.         GL_GREATER  = 0x204,
  35.         GL_NOTEQUAL = 0x205,
  36.         GL_GEQUAL   = 0x206,
  37.         GL_ALWAYS   = 0x207;
  38.  
  39.     /** AttribMask */
  40.     public static final int
  41.         GL_CURRENT_BIT         = 0x1,
  42.         GL_POINT_BIT           = 0x2,
  43.         GL_LINE_BIT            = 0x4,
  44.         GL_POLYGON_BIT         = 0x8,
  45.         GL_POLYGON_STIPPLE_BIT = 0x10,
  46.         GL_PIXEL_MODE_BIT      = 0x20,
  47.         GL_LIGHTING_BIT        = 0x40,
  48.         GL_FOG_BIT             = 0x80,
  49.         GL_DEPTH_BUFFER_BIT    = 0x100,
  50.         GL_ACCUM_BUFFER_BIT    = 0x200,
  51.         GL_STENCIL_BUFFER_BIT  = 0x400,
  52.         GL_VIEWPORT_BIT        = 0x800,
  53.         GL_TRANSFORM_BIT       = 0x1000,
  54.         GL_ENABLE_BIT          = 0x2000,
  55.         GL_COLOR_BUFFER_BIT    = 0x4000,
  56.         GL_HINT_BIT            = 0x8000,
  57.         GL_EVAL_BIT            = 0x10000,
  58.         GL_LIST_BIT            = 0x20000,
  59.         GL_TEXTURE_BIT         = 0x40000,
  60.         GL_SCISSOR_BIT         = 0x80000,
  61.         GL_ALL_ATTRIB_BITS     = 0xFFFFF;
  62.  
  63.     /** BeginMode */
  64.     public static final int
  65.         GL_POINTS         = 0x0,
  66.         GL_LINES          = 0x1,
  67.         GL_LINE_LOOP      = 0x2,
  68.         GL_LINE_STRIP     = 0x3,
  69.         GL_TRIANGLES      = 0x4,
  70.         GL_TRIANGLE_STRIP = 0x5,
  71.         GL_TRIANGLE_FAN   = 0x6,
  72.         GL_QUADS          = 0x7,
  73.         GL_QUAD_STRIP     = 0x8,
  74.         GL_POLYGON        = 0x9;
  75.  
  76.     /** BlendingFactorDest */
  77.     public static final int
  78.         GL_ZERO                = 0x0,
  79.         GL_ONE                 = 0x1,
  80.         GL_SRC_COLOR           = 0x300,
  81.         GL_ONE_MINUS_SRC_COLOR = 0x301,
  82.         GL_SRC_ALPHA           = 0x302,
  83.         GL_ONE_MINUS_SRC_ALPHA = 0x303,
  84.         GL_DST_ALPHA           = 0x304,
  85.         GL_ONE_MINUS_DST_ALPHA = 0x305;
  86.  
  87.     /** BlendingFactorSrc */
  88.     public static final int
  89.         GL_DST_COLOR                = 0x306,
  90.         GL_ONE_MINUS_DST_COLOR      = 0x307,
  91.         GL_SRC_ALPHA_SATURATE       = 0x308,
  92.         GL_CONSTANT_COLOR           = 0x8001,
  93.         GL_ONE_MINUS_CONSTANT_COLOR = 0x8002,
  94.         GL_CONSTANT_ALPHA           = 0x8003,
  95.         GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004;
  96.  
  97.     /** Boolean */
  98.     public static final int
  99.         GL_TRUE  = 0x1,
  100.         GL_FALSE = 0x0;
  101.  
  102.     /** ClipPlaneName */
  103.     public static final int
  104.         GL_CLIP_PLANE0 = 0x3000,
  105.         GL_CLIP_PLANE1 = 0x3001,
  106.         GL_CLIP_PLANE2 = 0x3002,
  107.         GL_CLIP_PLANE3 = 0x3003,
  108.         GL_CLIP_PLANE4 = 0x3004,
  109.         GL_CLIP_PLANE5 = 0x3005;
  110.  
  111.     /** DataType */
  112.     public static final int
  113.         GL_BYTE           = 0x1400,
  114.         GL_UNSIGNED_BYTE  = 0x1401,
  115.         GL_SHORT          = 0x1402,
  116.         GL_UNSIGNED_SHORT = 0x1403,
  117.         GL_INT            = 0x1404,
  118.         GL_UNSIGNED_INT   = 0x1405,
  119.         GL_FLOAT          = 0x1406,
  120.         GL_2_BYTES        = 0x1407,
  121.         GL_3_BYTES        = 0x1408,
  122.         GL_4_BYTES        = 0x1409,
  123.         GL_DOUBLE         = 0x140A;
  124.  
  125.     /** DrawBufferMode */
  126.     public static final int
  127.         GL_NONE           = 0x0,
  128.         GL_FRONT_LEFT     = 0x400,
  129.         GL_FRONT_RIGHT    = 0x401,
  130.         GL_BACK_LEFT      = 0x402,
  131.         GL_BACK_RIGHT     = 0x403,
  132.         GL_FRONT          = 0x404,
  133.         GL_BACK           = 0x405,
  134.         GL_LEFT           = 0x406,
  135.         GL_RIGHT          = 0x407,
  136.         GL_FRONT_AND_BACK = 0x408,
  137.         GL_AUX0           = 0x409,
  138.         GL_AUX1           = 0x40A,
  139.         GL_AUX2           = 0x40B,
  140.         GL_AUX3           = 0x40C;
  141.  
  142.     /** ErrorCode */
  143.     public static final int
  144.         GL_NO_ERROR          = 0x0,
  145.         GL_INVALID_ENUM      = 0x500,
  146.         GL_INVALID_VALUE     = 0x501,
  147.         GL_INVALID_OPERATION = 0x502,
  148.         GL_STACK_OVERFLOW    = 0x503,
  149.         GL_STACK_UNDERFLOW   = 0x504,
  150.         GL_OUT_OF_MEMORY     = 0x505;
  151.  
  152.     /** FeedBackMode */
  153.     public static final int
  154.         GL_2D               = 0x600,
  155.         GL_3D               = 0x601,
  156.         GL_3D_COLOR         = 0x602,
  157.         GL_3D_COLOR_TEXTURE = 0x603,
  158.         GL_4D_COLOR_TEXTURE = 0x604;
  159.  
  160.     /** FeedBackToken */
  161.     public static final int
  162.         GL_PASS_THROUGH_TOKEN = 0x700,
  163.         GL_POINT_TOKEN        = 0x701,
  164.         GL_LINE_TOKEN         = 0x702,
  165.         GL_POLYGON_TOKEN      = 0x703,
  166.         GL_BITMAP_TOKEN       = 0x704,
  167.         GL_DRAW_PIXEL_TOKEN   = 0x705,
  168.         GL_COPY_PIXEL_TOKEN   = 0x706,
  169.         GL_LINE_RESET_TOKEN   = 0x707;
  170.  
  171.     /** FogMode */
  172.     public static final int
  173.         GL_EXP  = 0x800,
  174.         GL_EXP2 = 0x801;
  175.  
  176.     /** FrontFaceDirection */
  177.     public static final int
  178.         GL_CW  = 0x900,
  179.         GL_CCW = 0x901;
  180.  
  181.     /** GetMapTarget */
  182.     public static final int
  183.         GL_COEFF  = 0xA00,
  184.         GL_ORDER  = 0xA01,
  185.         GL_DOMAIN = 0xA02;
  186.  
  187.     /** GetTarget */
  188.     public static final int
  189.         GL_CURRENT_COLOR                 = 0xB00,
  190.         GL_CURRENT_NORMAL                = 0xB02,
  191.         GL_CURRENT_TEXTURE_COORDS        = 0xB03,
  192.         GL_CURRENT_RASTER_COLOR          = 0xB04,
  193.         GL_CURRENT_RASTER_TEXTURE_COORDS = 0xB06,
  194.         GL_CURRENT_RASTER_POSITION       = 0xB07,
  195.         GL_CURRENT_RASTER_POSITION_VALID = 0xB08,
  196.         GL_CURRENT_RASTER_DISTANCE       = 0xB09,
  197.         GL_POINT_SMOOTH                  = 0xB10,
  198.         GL_POINT_SIZE                    = 0xB11,
  199.         GL_POINT_SIZE_RANGE              = 0xB12,
  200.         GL_POINT_SIZE_GRANULARITY        = 0xB13,
  201.         GL_LINE_SMOOTH                   = 0xB20,
  202.         GL_LINE_WIDTH                    = 0xB21,
  203.         GL_LINE_WIDTH_RANGE              = 0xB22,
  204.         GL_LINE_WIDTH_GRANULARITY        = 0xB23,
  205.         GL_LINE_STIPPLE                  = 0xB24,
  206.         GL_LINE_STIPPLE_PATTERN          = 0xB25,
  207.         GL_LINE_STIPPLE_REPEAT           = 0xB26,
  208.         GL_LIST_MODE                     = 0xB30,
  209.         GL_MAX_LIST_NESTING              = 0xB31,
  210.         GL_LIST_BASE                     = 0xB32,
  211.         GL_LIST_INDEX                    = 0xB33,
  212.         GL_POLYGON_MODE                  = 0xB40,
  213.         GL_POLYGON_SMOOTH                = 0xB41,
  214.         GL_POLYGON_STIPPLE               = 0xB42,
  215.         GL_EDGE_FLAG                     = 0xB43,
  216.         GL_CULL_FACE                     = 0xB44,
  217.         GL_CULL_FACE_MODE                = 0xB45,
  218.         GL_FRONT_FACE                    = 0xB46,
  219.         GL_LIGHTING                      = 0xB50,
  220.         GL_LIGHT_MODEL_LOCAL_VIEWER      = 0xB51,
  221.         GL_LIGHT_MODEL_TWO_SIDE          = 0xB52,
  222.         GL_LIGHT_MODEL_AMBIENT           = 0xB53,
  223.         GL_SHADE_MODEL                   = 0xB54,
  224.         GL_COLOR_MATERIAL_FACE           = 0xB55,
  225.         GL_COLOR_MATERIAL_PARAMETER      = 0xB56,
  226.         GL_COLOR_MATERIAL                = 0xB57,
  227.         GL_FOG                           = 0xB60,
  228.         GL_FOG_DENSITY                   = 0xB62,
  229.         GL_FOG_START                     = 0xB63,
  230.         GL_FOG_END                       = 0xB64,
  231.         GL_FOG_MODE                      = 0xB65,
  232.         GL_FOG_COLOR                     = 0xB66,
  233.         GL_DEPTH_RANGE                   = 0xB70,
  234.         GL_DEPTH_TEST                    = 0xB71,
  235.         GL_DEPTH_WRITEMASK               = 0xB72,
  236.         GL_DEPTH_CLEAR_VALUE             = 0xB73,
  237.         GL_DEPTH_FUNC                    = 0xB74,
  238.         GL_ACCUM_CLEAR_VALUE             = 0xB80,
  239.         GL_STENCIL_TEST                  = 0xB90,
  240.         GL_STENCIL_CLEAR_VALUE           = 0xB91,
  241.         GL_STENCIL_FUNC                  = 0xB92,
  242.         GL_STENCIL_VALUE_MASK            = 0xB93,
  243.         GL_STENCIL_FAIL                  = 0xB94,
  244.         GL_STENCIL_PASS_DEPTH_FAIL       = 0xB95,
  245.         GL_STENCIL_PASS_DEPTH_PASS       = 0xB96,
  246.         GL_STENCIL_REF                   = 0xB97,
  247.         GL_STENCIL_WRITEMASK             = 0xB98,
  248.         GL_MATRIX_MODE                   = 0xBA0,
  249.         GL_NORMALIZE                     = 0xBA1,
  250.         GL_VIEWPORT                      = 0xBA2,
  251.         GL_MODELVIEW_STACK_DEPTH         = 0xBA3,
  252.         GL_PROJECTION_STACK_DEPTH        = 0xBA4,
  253.         GL_TEXTURE_STACK_DEPTH           = 0xBA5,
  254.         GL_MODELVIEW_MATRIX              = 0xBA6,
  255.         GL_PROJECTION_MATRIX             = 0xBA7,
  256.         GL_TEXTURE_MATRIX                = 0xBA8,
  257.         GL_ATTRIB_STACK_DEPTH            = 0xBB0,
  258.         GL_CLIENT_ATTRIB_STACK_DEPTH     = 0xBB1,
  259.         GL_ALPHA_TEST                    = 0xBC0,
  260.         GL_ALPHA_TEST_FUNC               = 0xBC1,
  261.         GL_ALPHA_TEST_REF                = 0xBC2,
  262.         GL_DITHER                        = 0xBD0,
  263.         GL_BLEND_DST                     = 0xBE0,
  264.         GL_BLEND_SRC                     = 0xBE1,
  265.         GL_BLEND                         = 0xBE2,
  266.         GL_LOGIC_OP_MODE                 = 0xBF0,
  267.         GL_COLOR_LOGIC_OP                = 0xBF2,
  268.         GL_AUX_BUFFERS                   = 0xC00,
  269.         GL_DRAW_BUFFER                   = 0xC01,
  270.         GL_READ_BUFFER                   = 0xC02,
  271.         GL_SCISSOR_BOX                   = 0xC10,
  272.         GL_SCISSOR_TEST                  = 0xC11,
  273.         GL_COLOR_CLEAR_VALUE             = 0xC22,
  274.         GL_COLOR_WRITEMASK               = 0xC23,
  275.         GL_RGBA_MODE                     = 0xC31,
  276.         GL_DOUBLEBUFFER                  = 0xC32,
  277.         GL_STEREO                        = 0xC33,
  278.         GL_RENDER_MODE                   = 0xC40,
  279.         GL_PERSPECTIVE_CORRECTION_HINT   = 0xC50,
  280.         GL_POINT_SMOOTH_HINT             = 0xC51,
  281.         GL_LINE_SMOOTH_HINT              = 0xC52,
  282.         GL_POLYGON_SMOOTH_HINT           = 0xC53,
  283.         GL_FOG_HINT                      = 0xC54,
  284.         GL_TEXTURE_GEN_S                 = 0xC60,
  285.         GL_TEXTURE_GEN_T                 = 0xC61,
  286.         GL_TEXTURE_GEN_R                 = 0xC62,
  287.         GL_TEXTURE_GEN_Q                 = 0xC63,
  288.         GL_PIXEL_MAP_I_TO_I              = 0xC70,
  289.         GL_PIXEL_MAP_S_TO_S              = 0xC71,
  290.         GL_PIXEL_MAP_I_TO_R              = 0xC72,
  291.         GL_PIXEL_MAP_I_TO_G              = 0xC73,
  292.         GL_PIXEL_MAP_I_TO_B              = 0xC74,
  293.         GL_PIXEL_MAP_I_TO_A              = 0xC75,
  294.         GL_PIXEL_MAP_R_TO_R              = 0xC76,
  295.         GL_PIXEL_MAP_G_TO_G              = 0xC77,
  296.         GL_PIXEL_MAP_B_TO_B              = 0xC78,
  297.         GL_PIXEL_MAP_A_TO_A              = 0xC79,
  298.         GL_PIXEL_MAP_I_TO_I_SIZE         = 0xCB0,
  299.         GL_PIXEL_MAP_S_TO_S_SIZE         = 0xCB1,
  300.         GL_PIXEL_MAP_I_TO_R_SIZE         = 0xCB2,
  301.         GL_PIXEL_MAP_I_TO_G_SIZE         = 0xCB3,
  302.         GL_PIXEL_MAP_I_TO_B_SIZE         = 0xCB4,
  303.         GL_PIXEL_MAP_I_TO_A_SIZE         = 0xCB5,
  304.         GL_PIXEL_MAP_R_TO_R_SIZE         = 0xCB6,
  305.         GL_PIXEL_MAP_G_TO_G_SIZE         = 0xCB7,
  306.         GL_PIXEL_MAP_B_TO_B_SIZE         = 0xCB8,
  307.         GL_PIXEL_MAP_A_TO_A_SIZE         = 0xCB9,
  308.         GL_UNPACK_SWAP_BYTES             = 0xCF0,
  309.         GL_UNPACK_LSB_FIRST              = 0xCF1,
  310.         GL_UNPACK_ROW_LENGTH             = 0xCF2,
  311.         GL_UNPACK_SKIP_ROWS              = 0xCF3,
  312.         GL_UNPACK_SKIP_PIXELS            = 0xCF4,
  313.         GL_UNPACK_ALIGNMENT              = 0xCF5,
  314.         GL_PACK_SWAP_BYTES               = 0xD00,
  315.         GL_PACK_LSB_FIRST                = 0xD01,
  316.         GL_PACK_ROW_LENGTH               = 0xD02,
  317.         GL_PACK_SKIP_ROWS                = 0xD03,
  318.         GL_PACK_SKIP_PIXELS              = 0xD04,
  319.         GL_PACK_ALIGNMENT                = 0xD05,
  320.         GL_MAP_COLOR                     = 0xD10,
  321.         GL_MAP_STENCIL                   = 0xD11,
  322.         GL_INDEX_SHIFT                   = 0xD12,
  323.         GL_INDEX_OFFSET                  = 0xD13,
  324.         GL_RED_SCALE                     = 0xD14,
  325.         GL_RED_BIAS                      = 0xD15,
  326.         GL_ZOOM_X                        = 0xD16,
  327.         GL_ZOOM_Y                        = 0xD17,
  328.         GL_GREEN_SCALE                   = 0xD18,
  329.         GL_GREEN_BIAS                    = 0xD19,
  330.         GL_BLUE_SCALE                    = 0xD1A,
  331.         GL_BLUE_BIAS                     = 0xD1B,
  332.         GL_ALPHA_SCALE                   = 0xD1C,
  333.         GL_ALPHA_BIAS                    = 0xD1D,
  334.         GL_DEPTH_SCALE                   = 0xD1E,
  335.         GL_DEPTH_BIAS                    = 0xD1F,
  336.         GL_MAX_EVAL_ORDER                = 0xD30,
  337.         GL_MAX_LIGHTS                    = 0xD31,
  338.         GL_MAX_CLIP_PLANES               = 0xD32,
  339.         GL_MAX_TEXTURE_SIZE              = 0xD33,
  340.         GL_MAX_PIXEL_MAP_TABLE           = 0xD34,
  341.         GL_MAX_ATTRIB_STACK_DEPTH        = 0xD35,
  342.         GL_MAX_MODELVIEW_STACK_DEPTH     = 0xD36,
  343.         GL_MAX_NAME_STACK_DEPTH          = 0xD37,
  344.         GL_MAX_PROJECTION_STACK_DEPTH    = 0xD38,
  345.         GL_MAX_TEXTURE_STACK_DEPTH       = 0xD39,
  346.         GL_MAX_VIEWPORT_DIMS             = 0xD3A,
  347.         GL_MAX_CLIENT_ATTRIB_STACK_DEPTH = 0xD3B,
  348.         GL_SUBPIXEL_BITS                 = 0xD50,
  349.         GL_RED_BITS                      = 0xD52,
  350.         GL_GREEN_BITS                    = 0xD53,
  351.         GL_BLUE_BITS                     = 0xD54,
  352.         GL_ALPHA_BITS                    = 0xD55,
  353.         GL_DEPTH_BITS                    = 0xD56,
  354.         GL_STENCIL_BITS                  = 0xD57,
  355.         GL_ACCUM_RED_BITS                = 0xD58,
  356.         GL_ACCUM_GREEN_BITS              = 0xD59,
  357.         GL_ACCUM_BLUE_BITS               = 0xD5A,
  358.         GL_ACCUM_ALPHA_BITS              = 0xD5B,
  359.         GL_NAME_STACK_DEPTH              = 0xD70,
  360.         GL_AUTO_NORMAL                   = 0xD80,
  361.         GL_MAP1_COLOR_4                  = 0xD90,
  362.         GL_MAP1_NORMAL                   = 0xD92,
  363.         GL_MAP1_TEXTURE_COORD_1          = 0xD93,
  364.         GL_MAP1_TEXTURE_COORD_2          = 0xD94,
  365.         GL_MAP1_TEXTURE_COORD_3          = 0xD95,
  366.         GL_MAP1_TEXTURE_COORD_4          = 0xD96,
  367.         GL_MAP1_VERTEX_3                 = 0xD97,
  368.         GL_MAP1_VERTEX_4                 = 0xD98,
  369.         GL_MAP2_COLOR_4                  = 0xDB0,
  370.         GL_MAP2_NORMAL                   = 0xDB2,
  371.         GL_MAP2_TEXTURE_COORD_1          = 0xDB3,
  372.         GL_MAP2_TEXTURE_COORD_2          = 0xDB4,
  373.         GL_MAP2_TEXTURE_COORD_3          = 0xDB5,
  374.         GL_MAP2_TEXTURE_COORD_4          = 0xDB6,
  375.         GL_MAP2_VERTEX_3                 = 0xDB7,
  376.         GL_MAP2_VERTEX_4                 = 0xDB8,
  377.         GL_MAP1_GRID_DOMAIN              = 0xDD0,
  378.         GL_MAP1_GRID_SEGMENTS            = 0xDD1,
  379.         GL_MAP2_GRID_DOMAIN              = 0xDD2,
  380.         GL_MAP2_GRID_SEGMENTS            = 0xDD3,
  381.         GL_TEXTURE_1D                    = 0xDE0,
  382.         GL_TEXTURE_2D                    = 0xDE1,
  383.         GL_FEEDBACK_BUFFER_POINTER       = 0xDF0,
  384.         GL_FEEDBACK_BUFFER_SIZE          = 0xDF1,
  385.         GL_FEEDBACK_BUFFER_TYPE          = 0xDF2,
  386.         GL_SELECTION_BUFFER_POINTER      = 0xDF3,
  387.         GL_SELECTION_BUFFER_SIZE         = 0xDF4;
  388.  
  389.     /** GetTextureParameter */
  390.     public static final int
  391.         GL_TEXTURE_WIDTH           = 0x1000,
  392.         GL_TEXTURE_HEIGHT          = 0x1001,
  393.         GL_TEXTURE_INTERNAL_FORMAT = 0x1003,
  394.         GL_TEXTURE_BORDER_COLOR    = 0x1004,
  395.         GL_TEXTURE_BORDER          = 0x1005;
  396.  
  397.     /** HintMode */
  398.     public static final int
  399.         GL_DONT_CARE = 0x1100,
  400.         GL_FASTEST   = 0x1101,
  401.         GL_NICEST    = 0x1102;
  402.  
  403.     /** LightName */
  404.     public static final int
  405.         GL_LIGHT0 = 0x4000,
  406.         GL_LIGHT1 = 0x4001,
  407.         GL_LIGHT2 = 0x4002,
  408.         GL_LIGHT3 = 0x4003,
  409.         GL_LIGHT4 = 0x4004,
  410.         GL_LIGHT5 = 0x4005,
  411.         GL_LIGHT6 = 0x4006,
  412.         GL_LIGHT7 = 0x4007;
  413.  
  414.     /** LightParameter */
  415.     public static final int
  416.         GL_AMBIENT               = 0x1200,
  417.         GL_DIFFUSE               = 0x1201,
  418.         GL_SPECULAR              = 0x1202,
  419.         GL_POSITION              = 0x1203,
  420.         GL_SPOT_DIRECTION        = 0x1204,
  421.         GL_SPOT_EXPONENT         = 0x1205,
  422.         GL_SPOT_CUTOFF           = 0x1206,
  423.         GL_CONSTANT_ATTENUATION  = 0x1207,
  424.         GL_LINEAR_ATTENUATION    = 0x1208,
  425.         GL_QUADRATIC_ATTENUATION = 0x1209;
  426.  
  427.     /** ListMode */
  428.     public static final int
  429.         GL_COMPILE             = 0x1300,
  430.         GL_COMPILE_AND_EXECUTE = 0x1301;
  431.  
  432.     /** LogicOp */
  433.     public static final int
  434.         GL_CLEAR         = 0x1500,
  435.         GL_AND           = 0x1501,
  436.         GL_AND_REVERSE   = 0x1502,
  437.         GL_COPY          = 0x1503,
  438.         GL_AND_INVERTED  = 0x1504,
  439.         GL_NOOP          = 0x1505,
  440.         GL_XOR           = 0x1506,
  441.         GL_OR            = 0x1507,
  442.         GL_NOR           = 0x1508,
  443.         GL_EQUIV         = 0x1509,
  444.         GL_INVERT        = 0x150A,
  445.         GL_OR_REVERSE    = 0x150B,
  446.         GL_COPY_INVERTED = 0x150C,
  447.         GL_OR_INVERTED   = 0x150D,
  448.         GL_NAND          = 0x150E,
  449.         GL_SET           = 0x150F;
  450.  
  451.     /** MaterialParameter */
  452.     public static final int
  453.         GL_EMISSION            = 0x1600,
  454.         GL_SHININESS           = 0x1601,
  455.         GL_AMBIENT_AND_DIFFUSE = 0x1602;
  456.  
  457.     /** MatrixMode */
  458.     public static final int
  459.         GL_MODELVIEW  = 0x1700,
  460.         GL_PROJECTION = 0x1701,
  461.         GL_TEXTURE    = 0x1702;
  462.  
  463.     /** PixelCopyType */
  464.     public static final int
  465.         GL_COLOR   = 0x1800,
  466.         GL_DEPTH   = 0x1801,
  467.         GL_STENCIL = 0x1802;
  468.  
  469.     /** PixelFormat */
  470.     public static final int
  471.         GL_STENCIL_INDEX   = 0x1901,
  472.         GL_DEPTH_COMPONENT = 0x1902,
  473.         GL_RED             = 0x1903,
  474.         GL_GREEN           = 0x1904,
  475.         GL_BLUE            = 0x1905,
  476.         GL_ALPHA           = 0x1906,
  477.         GL_RGB             = 0x1907,
  478.         GL_RGBA            = 0x1908,
  479.         GL_LUMINANCE       = 0x1909,
  480.         GL_LUMINANCE_ALPHA = 0x190A;
  481.  
  482.     /** PixelType */
  483.     public static final int
  484.         GL_BITMAP = 0x1A00;
  485.  
  486.     /** PolygonMode */
  487.     public static final int
  488.         GL_POINT = 0x1B00,
  489.         GL_LINE  = 0x1B01,
  490.         GL_FILL  = 0x1B02;
  491.  
  492.     /** RenderingMode */
  493.     public static final int
  494.         GL_RENDER   = 0x1C00,
  495.         GL_FEEDBACK = 0x1C01,
  496.         GL_SELECT   = 0x1C02;
  497.  
  498.     /** ShadingModel */
  499.     public static final int
  500.         GL_FLAT   = 0x1D00,
  501.         GL_SMOOTH = 0x1D01;
  502.  
  503.     /** StencilOp */
  504.     public static final int
  505.         GL_KEEP    = 0x1E00,
  506.         GL_REPLACE = 0x1E01,
  507.         GL_INCR    = 0x1E02,
  508.         GL_DECR    = 0x1E03;
  509.  
  510.     /** StringName */
  511.     public static final int
  512.         GL_VENDOR     = 0x1F00,
  513.         GL_RENDERER   = 0x1F01,
  514.         GL_VERSION    = 0x1F02,
  515.         GL_EXTENSIONS = 0x1F03;
  516.  
  517.     /** TextureCoordName */
  518.     public static final int
  519.         GL_S = 0x2000,
  520.         GL_T = 0x2001,
  521.         GL_R = 0x2002,
  522.         GL_Q = 0x2003;
  523.  
  524.     /** TextureEnvMode */
  525.     public static final int
  526.         GL_MODULATE = 0x2100,
  527.         GL_DECAL    = 0x2101;
  528.  
  529.     /** TextureEnvParameter */
  530.     public static final int
  531.         GL_TEXTURE_ENV_MODE  = 0x2200,
  532.         GL_TEXTURE_ENV_COLOR = 0x2201;
  533.  
  534.     /** TextureEnvTarget */
  535.     public static final int
  536.         GL_TEXTURE_ENV = 0x2300;
  537.  
  538.     /** TextureGenMode */
  539.     public static final int
  540.         GL_EYE_LINEAR    = 0x2400,
  541.         GL_OBJECT_LINEAR = 0x2401,
  542.         GL_SPHERE_MAP    = 0x2402;
  543.  
  544.     /** TextureGenParameter */
  545.     public static final int
  546.         GL_TEXTURE_GEN_MODE = 0x2500,
  547.         GL_OBJECT_PLANE     = 0x2501,
  548.         GL_EYE_PLANE        = 0x2502;
  549.  
  550.     /** TextureMagFilter */
  551.     public static final int
  552.         GL_NEAREST = 0x2600,
  553.         GL_LINEAR  = 0x2601;
  554.  
  555.     /** TextureMinFilter */
  556.     public static final int
  557.         GL_NEAREST_MIPMAP_NEAREST = 0x2700,
  558.         GL_LINEAR_MIPMAP_NEAREST  = 0x2701,
  559.         GL_NEAREST_MIPMAP_LINEAR  = 0x2702,
  560.         GL_LINEAR_MIPMAP_LINEAR   = 0x2703;
  561.  
  562.     /** TextureParameterName */
  563.     public static final int
  564.         GL_TEXTURE_MAG_FILTER = 0x2800,
  565.         GL_TEXTURE_MIN_FILTER = 0x2801,
  566.         GL_TEXTURE_WRAP_S     = 0x2802,
  567.         GL_TEXTURE_WRAP_T     = 0x2803;
  568.  
  569.     /** TextureWrapMode */
  570.     public static final int
  571.         GL_CLAMP  = 0x2900,
  572.         GL_REPEAT = 0x2901;
  573.  
  574.     /** ClientAttribMask */
  575.     public static final int
  576.         GL_CLIENT_PIXEL_STORE_BIT  = 0x1,
  577.         GL_CLIENT_VERTEX_ARRAY_BIT = 0x2,
  578.         GL_CLIENT_ALL_ATTRIB_BITS  = 0xFFFFFFFF;
  579.  
  580.     /** polygon_offset */
  581.     public static final int
  582.         GL_POLYGON_OFFSET_FACTOR = 0x8038,
  583.         GL_POLYGON_OFFSET_UNITS  = 0x2A00,
  584.         GL_POLYGON_OFFSET_POINT  = 0x2A01,
  585.         GL_POLYGON_OFFSET_LINE   = 0x2A02,
  586.         GL_POLYGON_OFFSET_FILL   = 0x8037;
  587.  
  588.     /** texture */
  589.     public static final int
  590.         GL_ALPHA4                 = 0x803B,
  591.         GL_ALPHA8                 = 0x803C,
  592.         GL_ALPHA12                = 0x803D,
  593.         GL_ALPHA16                = 0x803E,
  594.         GL_LUMINANCE4             = 0x803F,
  595.         GL_LUMINANCE8             = 0x8040,
  596.         GL_LUMINANCE12            = 0x8041,
  597.         GL_LUMINANCE16            = 0x8042,
  598.         GL_LUMINANCE4_ALPHA4      = 0x8043,
  599.         GL_LUMINANCE6_ALPHA2      = 0x8044,
  600.         GL_LUMINANCE8_ALPHA8      = 0x8045,
  601.         GL_LUMINANCE12_ALPHA4     = 0x8046,
  602.         GL_LUMINANCE12_ALPHA12    = 0x8047,
  603.         GL_LUMINANCE16_ALPHA16    = 0x8048,
  604.         GL_INTENSITY              = 0x8049,
  605.         GL_INTENSITY4             = 0x804A,
  606.         GL_INTENSITY8             = 0x804B,
  607.         GL_INTENSITY12            = 0x804C,
  608.         GL_INTENSITY16            = 0x804D,
  609.         GL_R3_G3_B2               = 0x2A10,
  610.         GL_RGB4                   = 0x804F,
  611.         GL_RGB5                   = 0x8050,
  612.         GL_RGB8                   = 0x8051,
  613.         GL_RGB10                  = 0x8052,
  614.         GL_RGB12                  = 0x8053,
  615.         GL_RGB16                  = 0x8054,
  616.         GL_RGBA2                  = 0x8055,
  617.         GL_RGBA4                  = 0x8056,
  618.         GL_RGB5_A1                = 0x8057,
  619.         GL_RGBA8                  = 0x8058,
  620.         GL_RGB10_A2               = 0x8059,
  621.         GL_RGBA12                 = 0x805A,
  622.         GL_RGBA16                 = 0x805B,
  623.         GL_TEXTURE_RED_SIZE       = 0x805C,
  624.         GL_TEXTURE_GREEN_SIZE     = 0x805D,
  625.         GL_TEXTURE_BLUE_SIZE      = 0x805E,
  626.         GL_TEXTURE_ALPHA_SIZE     = 0x805F,
  627.         GL_TEXTURE_LUMINANCE_SIZE = 0x8060,
  628.         GL_TEXTURE_INTENSITY_SIZE = 0x8061,
  629.         GL_PROXY_TEXTURE_1D       = 0x8063,
  630.         GL_PROXY_TEXTURE_2D       = 0x8064;
  631.  
  632.     /** texture_object */
  633.     public static final int
  634.         GL_TEXTURE_PRIORITY   = 0x8066,
  635.         GL_TEXTURE_RESIDENT   = 0x8067,
  636.         GL_TEXTURE_BINDING_1D = 0x8068,
  637.         GL_TEXTURE_BINDING_2D = 0x8069;
  638.  
  639.     /** vertex_array */
  640.     public static final int
  641.         GL_VERTEX_ARRAY                = 0x8074,
  642.         GL_NORMAL_ARRAY                = 0x8075,
  643.         GL_COLOR_ARRAY                 = 0x8076,
  644.         GL_TEXTURE_COORD_ARRAY         = 0x8078,
  645.         GL_EDGE_FLAG_ARRAY             = 0x8079,
  646.         GL_VERTEX_ARRAY_SIZE           = 0x807A,
  647.         GL_VERTEX_ARRAY_TYPE           = 0x807B,
  648.         GL_VERTEX_ARRAY_STRIDE         = 0x807C,
  649.         GL_NORMAL_ARRAY_TYPE           = 0x807E,
  650.         GL_NORMAL_ARRAY_STRIDE         = 0x807F,
  651.         GL_COLOR_ARRAY_SIZE            = 0x8081,
  652.         GL_COLOR_ARRAY_TYPE            = 0x8082,
  653.         GL_COLOR_ARRAY_STRIDE          = 0x8083,
  654.         GL_TEXTURE_COORD_ARRAY_SIZE    = 0x8088,
  655.         GL_TEXTURE_COORD_ARRAY_TYPE    = 0x8089,
  656.         GL_TEXTURE_COORD_ARRAY_STRIDE  = 0x808A,
  657.         GL_EDGE_FLAG_ARRAY_STRIDE      = 0x808C,
  658.         GL_VERTEX_ARRAY_POINTER        = 0x808E,
  659.         GL_NORMAL_ARRAY_POINTER        = 0x808F,
  660.         GL_COLOR_ARRAY_POINTER         = 0x8090,
  661.         GL_TEXTURE_COORD_ARRAY_POINTER = 0x8092,
  662.         GL_EDGE_FLAG_ARRAY_POINTER     = 0x8093,
  663.         GL_V2F                         = 0x2A20,
  664.         GL_V3F                         = 0x2A21,
  665.         GL_C4UB_V2F                    = 0x2A22,
  666.         GL_C4UB_V3F                    = 0x2A23,
  667.         GL_C3F_V3F                     = 0x2A24,
  668.         GL_N3F_V3F                     = 0x2A25,
  669.         GL_C4F_N3F_V3F                 = 0x2A26,
  670.         GL_T2F_V3F                     = 0x2A27,
  671.         GL_T4F_V4F                     = 0x2A28,
  672.         GL_T2F_C4UB_V3F                = 0x2A29,
  673.         GL_T2F_C3F_V3F                 = 0x2A2A,
  674.         GL_T2F_N3F_V3F                 = 0x2A2B,
  675.         GL_T2F_C4F_N3F_V3F             = 0x2A2C,
  676.         GL_T4F_C4F_N3F_V4F             = 0x2A2D;
  677.  
  678.     private GL11() {}
  679.  
  680.     // --- [ glEnable ] ---
  681.  
  682.     /** JNI method for {@link #glEnable(int)} */
  683.     public static native void nglEnable(int target, long __functionAddress);
  684.  
  685.     /**
  686.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glEnable.xml">OpenGL SDK Reference</a>
  687.      * <p/>
  688.      * Enables the specified OpenGL state.
  689.      *
  690.      * @param target the OpenGL state to enable
  691.      */
  692.     public static void glEnable(int target) {
  693.         long __functionAddress = getInstance().glEnable;
  694.         if ( LWJGLUtil.CHECKS )
  695.             checkFunctionAddress(__functionAddress);
  696.         nglEnable(target, __functionAddress);
  697.     }
  698.  
  699.     // --- [ glDisable ] ---
  700.  
  701.     /** JNI method for {@link #glDisable(int)} */
  702.     public static native void nglDisable(int target, long __functionAddress);
  703.  
  704.     /**
  705.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glDisable.xml">OpenGL SDK Reference</a>
  706.      * <p/>
  707.      * Disables the specified OpenGL state.
  708.      *
  709.      * @param target the OpenGL state to disable
  710.      */
  711.     public static void glDisable(int target) {
  712.         long __functionAddress = getInstance().glDisable;
  713.         if ( LWJGLUtil.CHECKS )
  714.             checkFunctionAddress(__functionAddress);
  715.         nglDisable(target, __functionAddress);
  716.     }
  717.  
  718.     // --- [ glAccum ] ---
  719.  
  720.     /** JNI method for {@link #glAccum(int, float)} */
  721.     public static native void nglAccum(int op, float value, long __functionAddress);
  722.  
  723.     /**
  724.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  725.      * <p/>
  726.      * Each portion of a pixel in the accumulation buffer consists of four values: one for each of R, G, B, and A. The accumulation buffer is controlled
  727.      * exclusively through the use of this method (except for clearing it).
  728.      *
  729.      * @param op    a symbolic constant indicating an accumulation buffer operation
  730.      * @param value a floating-point value to be used in that operation. The possible operations are:. One of:<p/>{@link #GL_ACCUM}, {@link #GL_LOAD}, {@link #GL_RETURN}, {@link #GL_MULT}, {@link #GL_ADD}
  731.      */
  732.     public static void glAccum(int op, float value) {
  733.         long __functionAddress = getInstance().glAccum;
  734.         if ( LWJGLUtil.CHECKS )
  735.             checkFunctionAddress(__functionAddress);
  736.         nglAccum(op, value, __functionAddress);
  737.     }
  738.  
  739.     // --- [ glAlphaFunc ] ---
  740.  
  741.     /** JNI method for {@link #glAlphaFunc(int, float)} */
  742.     public static native void nglAlphaFunc(int func, float ref, long __functionAddress);
  743.  
  744.     /**
  745.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  746.      * <p/>
  747.      * The alpha test discards a fragment conditionally based on the outcome of a comparison between the incoming fragment’s alpha value and a constant value.
  748.      * The comparison is enabled or disabled with the generic {@link #glEnable(int)} and {@link #glDisable(int)} commands using the symbolic constant {@link #GL_ALPHA_TEST}.
  749.      * When disabled, it is as if the comparison always passes. The test is controlled with this method.
  750.      *
  751.      * @param func a symbolic constant indicating the alpha test function. The possible constants are:. One of:<p/>{@link #GL_NEVER}, {@link #GL_ALWAYS}, {@link #GL_LESS}, {@link #GL_LEQUAL}, {@link #GL_EQUAL}, {@link #GL_GEQUAL}, {@link #GL_GREATER}, {@link #GL_NOTEQUAL}
  752.      * @param ref  a reference value clamped to the range [0, 1]. When performing the alpha test, the GL will convert the reference value to the same representation as the fragment's alpha value (floating-point or fixed-point).
  753.      */
  754.     public static void glAlphaFunc(int func, float ref) {
  755.         long __functionAddress = getInstance().glAlphaFunc;
  756.         if ( LWJGLUtil.CHECKS )
  757.             checkFunctionAddress(__functionAddress);
  758.         nglAlphaFunc(func, ref, __functionAddress);
  759.     }
  760.  
  761.     // --- [ glAreTexturesResident ] ---
  762.  
  763.     /** JNI method for {@link #glAreTexturesResident(int, ByteBuffer, ByteBuffer)} */
  764.     public static native boolean nglAreTexturesResident(int n, long textures, long residences, long __functionAddress);
  765.  
  766.     /**
  767.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  768.      * <p/>
  769.      * Returns {@link #GL_TRUE} if all of the texture objects named in textures are resident, or if the implementation does not distinguish a working set. If
  770.      * at least one of the texture objects named in textures is not resident, then {@link #GL_FALSE} is returned, and the residence of each texture object is
  771.      * returned in residences. Otherwise the contents of residences are not changed.
  772.      *
  773.      * @param n          the number of texture objects in {@code textures}
  774.      * @param textures   an array of texture objects
  775.      * @param residences returns the residences of each texture object
  776.      */
  777.     public static boolean glAreTexturesResident(int n, ByteBuffer textures, ByteBuffer residences) {
  778.         long __functionAddress = getInstance().glAreTexturesResident;
  779.         if ( LWJGLUtil.CHECKS ) {
  780.             checkFunctionAddress(__functionAddress);
  781.             checkBuffer(textures, n << 2);
  782.             checkBuffer(residences, n << 0);
  783.         }
  784.         return nglAreTexturesResident(n, memAddress(textures), memAddress(residences), __functionAddress);
  785.     }
  786.  
  787.     /** Alternative version of: {@link #glAreTexturesResident(int, ByteBuffer, ByteBuffer)} */
  788.     public static boolean glAreTexturesResident(IntBuffer textures, ByteBuffer residences) {
  789.         long __functionAddress = getInstance().glAreTexturesResident;
  790.         if ( LWJGLUtil.CHECKS ) {
  791.             checkFunctionAddress(__functionAddress);
  792.             checkBuffer(residences, textures.remaining());
  793.         }
  794.         return nglAreTexturesResident(textures.remaining(), memAddress(textures), memAddress(residences), __functionAddress);
  795.     }
  796.  
  797.     // --- [ glArrayElement ] ---
  798.  
  799.     /** JNI method for {@link #glArrayElement(int)} */
  800.     public static native void nglArrayElement(int i, long __functionAddress);
  801.  
  802.     /**
  803.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glArrayElement.xml">OpenGL SDK Reference</a>
  804.      * <p/>
  805.      * Transfers the ith element of every enabled, non-instanced array, and the first element of every enabled, instanced array to the GL.
  806.      *
  807.      * @param i the element to transfer
  808.      */
  809.     public static void glArrayElement(int i) {
  810.         long __functionAddress = getInstance().glArrayElement;
  811.         if ( LWJGLUtil.CHECKS )
  812.             checkFunctionAddress(__functionAddress);
  813.         nglArrayElement(i, __functionAddress);
  814.     }
  815.  
  816.     // --- [ glBegin ] ---
  817.  
  818.     /** JNI method for {@link #glBegin(int)} */
  819.     public static native void nglBegin(int mode, long __functionAddress);
  820.  
  821.     /**
  822.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  823.      * <p/>
  824.      * Begins the definition of vertex attributes of a sequence of primitives to be transferred to the GL.
  825.      *
  826.      * @param mode the primitive type being defined. One of:<p/>{@link GL11#GL_POINTS}, {@link GL11#GL_LINE_STRIP}, {@link GL11#GL_LINE_LOOP}, {@link GL11#GL_LINES}, {@link GL11#GL_POLYGON}, {@link GL11#GL_TRIANGLE_STRIP}, {@link GL11#GL_TRIANGLE_FAN}, {@link GL11#GL_TRIANGLES}, {@link GL11#GL_QUAD_STRIP}, {@link GL11#GL_QUADS}, {@link GL32#GL_LINES_ADJACENCY}, {@link GL32#GL_LINE_STRIP_ADJACENCY}, {@link GL32#GL_TRIANGLES_ADJACENCY}, {@link GL32#GL_TRIANGLE_STRIP_ADJACENCY}, {@link GL40#GL_PATCHES}
  827.      */
  828.     public static void glBegin(int mode) {
  829.         long __functionAddress = getInstance().glBegin;
  830.         if ( LWJGLUtil.CHECKS )
  831.             checkFunctionAddress(__functionAddress);
  832.         nglBegin(mode, __functionAddress);
  833.     }
  834.  
  835.     // --- [ glBindTexture ] ---
  836.  
  837.     /** JNI method for {@link #glBindTexture(int, int)} */
  838.     public static native void nglBindTexture(int target, int texture, long __functionAddress);
  839.  
  840.     /**
  841.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glBindTexture.xml">OpenGL SDK Reference</a>
  842.      * <p/>
  843.      * Binds the a texture to a texture target.
  844.      * <p/>
  845.      * While a texture object is bound, GL operations on the target to which it is bound affect the bound object, and queries of the target to which it is
  846.      * bound return state from the bound object. If texture mapping of the dimensionality of the target to which a texture object is bound is enabled, the
  847.      * state of the bound texture object directs the texturing operation.
  848.      *
  849.      * @param target  the texture target. One of:<p/>{@link #GL_TEXTURE_1D}, {@link GL11#GL_TEXTURE_2D}, {@link GL30#GL_TEXTURE_1D_ARRAY}, {@link GL31#GL_TEXTURE_RECTANGLE}, {@link GL13#GL_TEXTURE_CUBE_MAP}, {@link GL12#GL_TEXTURE_3D}, {@link GL30#GL_TEXTURE_2D_ARRAY}, {@link GL30#GL_TEXTURE_CUBE_MAP_ARRAY}, {@link GL31#GL_TEXTURE_BUFFER}, {@link GL32#GL_TEXTURE_2D_MULTISAMPLE}, {@link GL32#GL_TEXTURE_2D_MULTISAMPLE_ARRAY}
  850.      * @param texture the texture object to bind
  851.      */
  852.     public static void glBindTexture(int target, int texture) {
  853.         long __functionAddress = getInstance().glBindTexture;
  854.         if ( LWJGLUtil.CHECKS )
  855.             checkFunctionAddress(__functionAddress);
  856.         nglBindTexture(target, texture, __functionAddress);
  857.     }
  858.  
  859.     // --- [ glBitmap ] ---
  860.  
  861.     /** JNI method for {@link #glBitmap(int, int, float, float, float, float, ByteBuffer)} */
  862.     public static native void nglBitmap(int w, int h, float xOrig, float yOrig, float xInc, float yInc, long data, long __functionAddress);
  863.  
  864.     /**
  865.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  866.      * <p/>
  867.      * Sents a bitmap to the GL. Bitmaps are rectangles of zeros and ones specifying a particular pattern of fragments to be produced. Each of these fragments
  868.      * has the same associated data. These data are those associated with the current raster position.
  869.      *
  870.      * @param w     the bitmap width
  871.      * @param h     the bitmap width
  872.      * @param xOrig the bitmap origin x coordinate
  873.      * @param yOrig the bitmap origin y coordinate
  874.      * @param xInc  the x increment added to the raster position
  875.      * @param yInc  the y increment added to the raster position
  876.      * @param data  the buffer containing the bitmap data.
  877.      */
  878.     public static void glBitmap(int w, int h, float xOrig, float yOrig, float xInc, float yInc, ByteBuffer data) {
  879.         long __functionAddress = getInstance().glBitmap;
  880.         if ( LWJGLUtil.CHECKS ) {
  881.             checkFunctionAddress(__functionAddress);
  882.             checkBuffer(data, (w * h) << 0);
  883.             GLChecks.ensureBufferObject(0x88EF, false);
  884.         }
  885.         nglBitmap(w, h, xOrig, yOrig, xInc, yInc, memAddress(data), __functionAddress);
  886.     }
  887.  
  888.     /** Buffer object offset version of: {@link #glBitmap(int, int, float, float, float, float, ByteBuffer)} */
  889.     public static void glBitmap(int w, int h, float xOrig, float yOrig, float xInc, float yInc, long dataOffset) {
  890.         long __functionAddress = getInstance().glBitmap;
  891.         if ( LWJGLUtil.CHECKS ) {
  892.             checkFunctionAddress(__functionAddress);
  893.             GLChecks.ensureBufferObject(0x88EF, true);
  894.         }
  895.         nglBitmap(w, h, xOrig, yOrig, xInc, yInc, dataOffset, __functionAddress);
  896.     }
  897.  
  898.     // --- [ glBlendFunc ] ---
  899.  
  900.     /** JNI method for {@link #glBlendFunc(int, int)} */
  901.     public static native void nglBlendFunc(int sfactor, int dfactor, long __functionAddress);
  902.  
  903.     /**
  904.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glBlendFunc.xml">OpenGL SDK Reference</a>
  905.      * <p/>
  906.      * Specifies the weighting factors used by the blend equation, for both RGB and alpha functions and for all draw buffers.
  907.      *
  908.      * @param sfactor the source weighting factor. One of:<p/>{@link #GL_ZERO}, {@link #GL_ONE}, {@link #GL_SRC_COLOR}, {@link #GL_ONE_MINUS_SRC_COLOR}, {@link #GL_DST_COLOR}, {@link #GL_ONE_MINUS_DST_COLOR}, {@link #GL_SRC_ALPHA}, {@link #GL_ONE_MINUS_SRC_ALPHA}, {@link #GL_DST_ALPHA}, {@link #GL_ONE_MINUS_DST_ALPHA}, {@link #GL_CONSTANT_COLOR}, {@link #GL_ONE_MINUS_CONSTANT_COLOR}, {@link #GL_CONSTANT_ALPHA}, {@link #GL_ONE_MINUS_CONSTANT_ALPHA}, {@link #GL_SRC_ALPHA_SATURATE}, {@link GL33#GL_SRC1_COLOR}, {@link GL33#GL_ONE_MINUS_SRC1_COLOR}, {@link GL33#GL_SRC1_ALPHA}, {@link GL33#GL_ONE_MINUS_SRC1_ALPHA}
  909.      * @param dfactor the destination weighting factor
  910.      */
  911.     public static void glBlendFunc(int sfactor, int dfactor) {
  912.         long __functionAddress = getInstance().glBlendFunc;
  913.         if ( LWJGLUtil.CHECKS )
  914.             checkFunctionAddress(__functionAddress);
  915.         nglBlendFunc(sfactor, dfactor, __functionAddress);
  916.     }
  917.  
  918.     // --- [ glCallList ] ---
  919.  
  920.     /** JNI method for {@link #glCallList(int)} */
  921.     public static native void nglCallList(int list, long __functionAddress);
  922.  
  923.     /**
  924.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  925.      * <p/>
  926.      * Executes a display list. Causes the commands saved in the display list to be executed, in order, just as if they were issued without using a display list.
  927.      *
  928.      * @param list the index of the display list to be called
  929.      */
  930.     public static void glCallList(int list) {
  931.         long __functionAddress = getInstance().glCallList;
  932.         if ( LWJGLUtil.CHECKS )
  933.             checkFunctionAddress(__functionAddress);
  934.         nglCallList(list, __functionAddress);
  935.     }
  936.  
  937.     // --- [ glCallLists ] ---
  938.  
  939.     /** JNI method for {@link #glCallLists(int, int, ByteBuffer)} */
  940.     public static native void nglCallLists(int n, int type, long lists, long __functionAddress);
  941.  
  942.     /**
  943.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  944.      * <p/>
  945.      * Provides an efficient means for executing a number of display lists.
  946.      *
  947.      * @param n     the number of display lists to be called
  948.      * @param type  the data type of each element in {@code lists}. One of:<p/>{@link #GL_BYTE}, {@link #GL_UNSIGNED_BYTE}, {@link #GL_SHORT}, {@link #GL_UNSIGNED_SHORT}, {@link #GL_INT}, {@link #GL_UNSIGNED_INT}, {@link #GL_FLOAT}, {@link #GL_2_BYTES}, {@link #GL_3_BYTES}, {@link #GL_4_BYTES}
  949.      * @param lists an array of offsets. Each offset is added to the display list base to obtain the display list number.
  950.      */
  951.     public static void glCallLists(int n, int type, ByteBuffer lists) {
  952.         long __functionAddress = getInstance().glCallLists;
  953.         if ( LWJGLUtil.CHECKS ) {
  954.             checkFunctionAddress(__functionAddress);
  955.             checkBuffer(lists, n * GLChecks.translateTypeToBytes(type));
  956.         }
  957.         nglCallLists(n, type, memAddress(lists), __functionAddress);
  958.     }
  959.  
  960.     /** GL_UNSIGNED_BYTE version of: {@link #glCallLists(int, int, ByteBuffer)} */
  961.     public static void glCallLists(ByteBuffer lists) {
  962.         long __functionAddress = getInstance().glCallLists;
  963.         if ( LWJGLUtil.CHECKS )
  964.             checkFunctionAddress(__functionAddress);
  965.         nglCallLists(lists.remaining(), GL11.GL_UNSIGNED_BYTE, memAddress(lists), __functionAddress);
  966.     }
  967.  
  968.     /** GL_UNSIGNED_SHORT version of: {@link #glCallLists(int, int, ByteBuffer)} */
  969.     public static void glCallLists(ShortBuffer lists) {
  970.         long __functionAddress = getInstance().glCallLists;
  971.         if ( LWJGLUtil.CHECKS )
  972.             checkFunctionAddress(__functionAddress);
  973.         nglCallLists(lists.remaining(), GL11.GL_UNSIGNED_SHORT, memAddress(lists), __functionAddress);
  974.     }
  975.  
  976.     /** GL_UNSIGNED_INT version of: {@link #glCallLists(int, int, ByteBuffer)} */
  977.     public static void glCallLists(IntBuffer lists) {
  978.         long __functionAddress = getInstance().glCallLists;
  979.         if ( LWJGLUtil.CHECKS )
  980.             checkFunctionAddress(__functionAddress);
  981.         nglCallLists(lists.remaining(), GL11.GL_UNSIGNED_INT, memAddress(lists), __functionAddress);
  982.     }
  983.  
  984.     // --- [ glClear ] ---
  985.  
  986.     /** JNI method for {@link #glClear(int)} */
  987.     public static native void nglClear(int mask, long __functionAddress);
  988.  
  989.     /**
  990.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glClear.xml">OpenGL SDK Reference</a>
  991.      * <p/>
  992.      * Sets portions of every pixel in a particular buffer to the same value. The value to which each buffer is cleared depends on the setting of the clear
  993.      * value for that buffer.
  994.      *
  995.      * @param mask Zero or the bitwise OR of one or more values indicating which buffers are to be cleared. Valid values:. One of:<p/>{@link #GL_ACCUM_BUFFER_BIT}, {@link #GL_COLOR_BUFFER_BIT}, {@link #GL_DEPTH_BUFFER_BIT}, {@link #GL_STENCIL_BUFFER_BIT}
  996.      */
  997.     public static void glClear(int mask) {
  998.         long __functionAddress = getInstance().glClear;
  999.         if ( LWJGLUtil.CHECKS )
  1000.             checkFunctionAddress(__functionAddress);
  1001.         nglClear(mask, __functionAddress);
  1002.     }
  1003.  
  1004.     // --- [ glClearAccum ] ---
  1005.  
  1006.     /** JNI method for {@link #glClearAccum(float, float, float, float)} */
  1007.     public static native void nglClearAccum(float red, float green, float blue, float alpha, long __functionAddress);
  1008.  
  1009.     /**
  1010.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1011.      * <p/>
  1012.      * Sets the clear values for the accumulation buffer. These values are clamped to the range [-1,1] when they are specified.
  1013.      *
  1014.      * @param red   the value to which to clear the R values of the accumulation buffer
  1015.      * @param green the value to which to clear the G values of the accumulation buffer
  1016.      * @param blue  the value to which to clear the B values of the accumulation buffer
  1017.      * @param alpha the value to which to clear the A values of the accumulation buffer
  1018.      */
  1019.     public static void glClearAccum(float red, float green, float blue, float alpha) {
  1020.         long __functionAddress = getInstance().glClearAccum;
  1021.         if ( LWJGLUtil.CHECKS )
  1022.             checkFunctionAddress(__functionAddress);
  1023.         nglClearAccum(red, green, blue, alpha, __functionAddress);
  1024.     }
  1025.  
  1026.     // --- [ glClearColor ] ---
  1027.  
  1028.     /** JNI method for {@link #glClearColor(float, float, float, float)} */
  1029.     public static native void nglClearColor(float red, float green, float blue, float alpha, long __functionAddress);
  1030.  
  1031.     /**
  1032.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glClearColor.xml">OpenGL SDK Reference</a>
  1033.      * <p/>
  1034.      * Sets the clear value for fixed-point and floating-point color buffers in RGBA mode. The specified components are stored as floating-point values.
  1035.      *
  1036.      * @param red   the value to which to clear the R channel of the color buffer
  1037.      * @param green the value to which to clear the G channel of the color buffer
  1038.      * @param blue  the value to which to clear the B channel of the color buffer
  1039.      * @param alpha the value to which to clear the A channel of the color buffer
  1040.      */
  1041.     public static void glClearColor(float red, float green, float blue, float alpha) {
  1042.         long __functionAddress = getInstance().glClearColor;
  1043.         if ( LWJGLUtil.CHECKS )
  1044.             checkFunctionAddress(__functionAddress);
  1045.         nglClearColor(red, green, blue, alpha, __functionAddress);
  1046.     }
  1047.  
  1048.     // --- [ glClearDepth ] ---
  1049.  
  1050.     /** JNI method for {@link #glClearDepth(double)} */
  1051.     public static native void nglClearDepth(double depth, long __functionAddress);
  1052.  
  1053.     /**
  1054.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glClearDepth.xml">OpenGL SDK Reference</a>
  1055.      * <p/>
  1056.      * Sets the depth value used when clearing the depth buffer. When clearing a fixedpoint depth buffer, {@code depth} is clamped to the range [0,1] and
  1057.      * converted to fixed-point. No conversion is applied when clearing a floating-point depth buffer.
  1058.      *
  1059.      * @param depth the value to which to clear the depth buffer
  1060.      */
  1061.     public static void glClearDepth(double depth) {
  1062.         long __functionAddress = getInstance().glClearDepth;
  1063.         if ( LWJGLUtil.CHECKS )
  1064.             checkFunctionAddress(__functionAddress);
  1065.         nglClearDepth(depth, __functionAddress);
  1066.     }
  1067.  
  1068.     // --- [ glClearStencil ] ---
  1069.  
  1070.     /** JNI method for {@link #glClearStencil(int)} */
  1071.     public static native void nglClearStencil(int s, long __functionAddress);
  1072.  
  1073.     /**
  1074.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glClearStencil.xml">OpenGL SDK Reference</a>
  1075.      * <p/>
  1076.      * Sets the value to which to clear the stencil buffer. {@code s} is masked to the number of bitplanes in the stencil buffer.
  1077.      *
  1078.      * @param s the value to which to clear the stencil buffer
  1079.      */
  1080.     public static void glClearStencil(int s) {
  1081.         long __functionAddress = getInstance().glClearStencil;
  1082.         if ( LWJGLUtil.CHECKS )
  1083.             checkFunctionAddress(__functionAddress);
  1084.         nglClearStencil(s, __functionAddress);
  1085.     }
  1086.  
  1087.     // --- [ glClipPlane ] ---
  1088.  
  1089.     /** JNI method for {@link #glClipPlane(int, ByteBuffer)} */
  1090.     public static native void nglClipPlane(int plane, long equation, long __functionAddress);
  1091.  
  1092.     /**
  1093.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glClipPlane.xml">OpenGL SDK Reference</a>
  1094.      * <p/>
  1095.      * Specifies a client-defined clip plane.
  1096.      * <p/>
  1097.      * The value of the first argument, {@code plane}, is a symbolic constant, CLIP_PLANEi, where i is an integer between 0 and n &ndash; 1, indicating one of
  1098.      * n client-defined clip planes. @{code equation} is an array of four double-precision floating-point values. These are the coefficients of a plane
  1099.      * equation in object coordinates: p1, p2, p3, and p4 (in that order).
  1100.      *
  1101.      * @param plane    the clip plane to define
  1102.      * @param equation the clip plane coefficients
  1103.      */
  1104.     public static void glClipPlane(int plane, ByteBuffer equation) {
  1105.         long __functionAddress = getInstance().glClipPlane;
  1106.         if ( LWJGLUtil.CHECKS )
  1107.             checkFunctionAddress(__functionAddress);
  1108.         nglClipPlane(plane, memAddress(equation), __functionAddress);
  1109.     }
  1110.  
  1111.     /** Alternative version of: {@link #glClipPlane(int, ByteBuffer)} */
  1112.     public static void glClipPlane(int plane, DoubleBuffer equation) {
  1113.         long __functionAddress = getInstance().glClipPlane;
  1114.         if ( LWJGLUtil.CHECKS )
  1115.             checkFunctionAddress(__functionAddress);
  1116.         nglClipPlane(plane, memAddress(equation), __functionAddress);
  1117.     }
  1118.  
  1119.     // --- [ glColor3b ] ---
  1120.  
  1121.     /** JNI method for {@link #glColor3b(byte, byte, byte)} */
  1122.     public static native void nglColor3b(byte red, byte green, byte blue, long __functionAddress);
  1123.  
  1124.     /**
  1125.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1126.      * <p/>
  1127.      * Sets the R, G, and B components of the current color. The alpha component is set to 1.0.
  1128.      *
  1129.      * @param red   the red component of the current color
  1130.      * @param green the green component of the current color
  1131.      * @param blue  the blue component of the current color
  1132.      */
  1133.     public static void glColor3b(byte red, byte green, byte blue) {
  1134.         long __functionAddress = getInstance().glColor3b;
  1135.         if ( LWJGLUtil.CHECKS )
  1136.             checkFunctionAddress(__functionAddress);
  1137.         nglColor3b(red, green, blue, __functionAddress);
  1138.     }
  1139.  
  1140.     // --- [ glColor3s ] ---
  1141.  
  1142.     /** JNI method for {@link #glColor3s(short, short, short)} */
  1143.     public static native void nglColor3s(short red, short green, short blue, long __functionAddress);
  1144.  
  1145.     /**
  1146.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1147.      * <p/>
  1148.      * Short version of {@link #glColor3b(byte, byte, byte)}
  1149.      *
  1150.      * @param red   the red component of the current color
  1151.      * @param green the green component of the current color
  1152.      * @param blue  the blue component of the current color
  1153.      */
  1154.     public static void glColor3s(short red, short green, short blue) {
  1155.         long __functionAddress = getInstance().glColor3s;
  1156.         if ( LWJGLUtil.CHECKS )
  1157.             checkFunctionAddress(__functionAddress);
  1158.         nglColor3s(red, green, blue, __functionAddress);
  1159.     }
  1160.  
  1161.     // --- [ glColor3i ] ---
  1162.  
  1163.     /** JNI method for {@link #glColor3i(int, int, int)} */
  1164.     public static native void nglColor3i(int red, int green, int blue, long __functionAddress);
  1165.  
  1166.     /**
  1167.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1168.      * <p/>
  1169.      * Integer version of {@link #glColor3b(byte, byte, byte)}
  1170.      *
  1171.      * @param red   the red component of the current color
  1172.      * @param green the green component of the current color
  1173.      * @param blue  the blue component of the current color
  1174.      */
  1175.     public static void glColor3i(int red, int green, int blue) {
  1176.         long __functionAddress = getInstance().glColor3i;
  1177.         if ( LWJGLUtil.CHECKS )
  1178.             checkFunctionAddress(__functionAddress);
  1179.         nglColor3i(red, green, blue, __functionAddress);
  1180.     }
  1181.  
  1182.     // --- [ glColor3f ] ---
  1183.  
  1184.     /** JNI method for {@link #glColor3f(float, float, float)} */
  1185.     public static native void nglColor3f(float red, float green, float blue, long __functionAddress);
  1186.  
  1187.     /**
  1188.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1189.      * <p/>
  1190.      * Float version of {@link #glColor3b(byte, byte, byte)}
  1191.      *
  1192.      * @param red   the red component of the current color
  1193.      * @param green the green component of the current color
  1194.      * @param blue  the blue component of the current color
  1195.      */
  1196.     public static void glColor3f(float red, float green, float blue) {
  1197.         long __functionAddress = getInstance().glColor3f;
  1198.         if ( LWJGLUtil.CHECKS )
  1199.             checkFunctionAddress(__functionAddress);
  1200.         nglColor3f(red, green, blue, __functionAddress);
  1201.     }
  1202.  
  1203.     // --- [ glColor3d ] ---
  1204.  
  1205.     /** JNI method for {@link #glColor3d(double, double, double)} */
  1206.     public static native void nglColor3d(double red, double green, double blue, long __functionAddress);
  1207.  
  1208.     /**
  1209.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1210.      * <p/>
  1211.      * Double version of {@link #glColor3b(byte, byte, byte)}
  1212.      *
  1213.      * @param red   the red component of the current color
  1214.      * @param green the green component of the current color
  1215.      * @param blue  the blue component of the current color
  1216.      */
  1217.     public static void glColor3d(double red, double green, double blue) {
  1218.         long __functionAddress = getInstance().glColor3d;
  1219.         if ( LWJGLUtil.CHECKS )
  1220.             checkFunctionAddress(__functionAddress);
  1221.         nglColor3d(red, green, blue, __functionAddress);
  1222.     }
  1223.  
  1224.     // --- [ glColor3ub ] ---
  1225.  
  1226.     /** JNI method for {@link #glColor3ub(byte, byte, byte)} */
  1227.     public static native void nglColor3ub(byte red, byte green, byte blue, long __functionAddress);
  1228.  
  1229.     /**
  1230.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1231.      * <p/>
  1232.      * Unsigned version of {@link #glColor3b(byte, byte, byte)}
  1233.      *
  1234.      * @param red   the red component of the current color
  1235.      * @param green the green component of the current color
  1236.      * @param blue  the blue component of the current color
  1237.      */
  1238.     public static void glColor3ub(byte red, byte green, byte blue) {
  1239.         long __functionAddress = getInstance().glColor3ub;
  1240.         if ( LWJGLUtil.CHECKS )
  1241.             checkFunctionAddress(__functionAddress);
  1242.         nglColor3ub(red, green, blue, __functionAddress);
  1243.     }
  1244.  
  1245.     // --- [ glColor3us ] ---
  1246.  
  1247.     /** JNI method for {@link #glColor3us(short, short, short)} */
  1248.     public static native void nglColor3us(short red, short green, short blue, long __functionAddress);
  1249.  
  1250.     /**
  1251.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1252.      * <p/>
  1253.      * Unsigned short version of {@link #glColor3b(byte, byte, byte)}
  1254.      *
  1255.      * @param red   the red component of the current color
  1256.      * @param green the green component of the current color
  1257.      * @param blue  the blue component of the current color
  1258.      */
  1259.     public static void glColor3us(short red, short green, short blue) {
  1260.         long __functionAddress = getInstance().glColor3us;
  1261.         if ( LWJGLUtil.CHECKS )
  1262.             checkFunctionAddress(__functionAddress);
  1263.         nglColor3us(red, green, blue, __functionAddress);
  1264.     }
  1265.  
  1266.     // --- [ glColor3ui ] ---
  1267.  
  1268.     /** JNI method for {@link #glColor3ui(int, int, int)} */
  1269.     public static native void nglColor3ui(int red, int green, int blue, long __functionAddress);
  1270.  
  1271.     /**
  1272.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1273.      * <p/>
  1274.      * Unsigned int version of {@link #glColor3b(byte, byte, byte)}
  1275.      *
  1276.      * @param red   the red component of the current color
  1277.      * @param green the green component of the current color
  1278.      * @param blue  the blue component of the current color
  1279.      */
  1280.     public static void glColor3ui(int red, int green, int blue) {
  1281.         long __functionAddress = getInstance().glColor3ui;
  1282.         if ( LWJGLUtil.CHECKS )
  1283.             checkFunctionAddress(__functionAddress);
  1284.         nglColor3ui(red, green, blue, __functionAddress);
  1285.     }
  1286.  
  1287.     // --- [ glColor3bv ] ---
  1288.  
  1289.     /** JNI method for {@link #glColor3b(ByteBuffer)} */
  1290.     public static native void nglColor3bv(long v, long __functionAddress);
  1291.  
  1292.     /**
  1293.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1294.      * <p/>
  1295.      * Byte pointer version of {@link #glColor3b(byte, byte, byte)}.
  1296.      *
  1297.      * @param v the color buffer
  1298.      */
  1299.     public static void glColor3b(ByteBuffer v) {
  1300.         long __functionAddress = getInstance().glColor3bv;
  1301.         if ( LWJGLUtil.CHECKS ) {
  1302.             checkFunctionAddress(__functionAddress);
  1303.             checkBuffer(v, 3 << 0);
  1304.         }
  1305.         nglColor3bv(memAddress(v), __functionAddress);
  1306.     }
  1307.  
  1308.     // --- [ glColor3sv ] ---
  1309.  
  1310.     /** JNI method for {@link #glColor3s(ByteBuffer)} */
  1311.     public static native void nglColor3sv(long v, long __functionAddress);
  1312.  
  1313.     /**
  1314.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1315.      * <p/>
  1316.      * Pointer version of {@link #glColor3s(short, short, short)}.
  1317.      *
  1318.      * @param v the color buffer
  1319.      */
  1320.     public static void glColor3s(ByteBuffer v) {
  1321.         long __functionAddress = getInstance().glColor3sv;
  1322.         if ( LWJGLUtil.CHECKS ) {
  1323.             checkFunctionAddress(__functionAddress);
  1324.             checkBuffer(v, 3 << 1);
  1325.         }
  1326.         nglColor3sv(memAddress(v), __functionAddress);
  1327.     }
  1328.  
  1329.     /** Alternative version of: {@link #glColor3s(ByteBuffer)} */
  1330.     public static void glColor3(ShortBuffer v) {
  1331.         long __functionAddress = getInstance().glColor3sv;
  1332.         if ( LWJGLUtil.CHECKS ) {
  1333.             checkFunctionAddress(__functionAddress);
  1334.             checkBuffer(v, 3);
  1335.         }
  1336.         nglColor3sv(memAddress(v), __functionAddress);
  1337.     }
  1338.  
  1339.     // --- [ glColor3iv ] ---
  1340.  
  1341.     /** JNI method for {@link #glColor3i(ByteBuffer)} */
  1342.     public static native void nglColor3iv(long v, long __functionAddress);
  1343.  
  1344.     /**
  1345.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1346.      * <p/>
  1347.      * Pointer version of {@link #glColor3i(int, int, int)}.
  1348.      *
  1349.      * @param v the color buffer
  1350.      */
  1351.     public static void glColor3i(ByteBuffer v) {
  1352.         long __functionAddress = getInstance().glColor3iv;
  1353.         if ( LWJGLUtil.CHECKS ) {
  1354.             checkFunctionAddress(__functionAddress);
  1355.             checkBuffer(v, 3 << 2);
  1356.         }
  1357.         nglColor3iv(memAddress(v), __functionAddress);
  1358.     }
  1359.  
  1360.     /** Alternative version of: {@link #glColor3i(ByteBuffer)} */
  1361.     public static void glColor3(IntBuffer v) {
  1362.         long __functionAddress = getInstance().glColor3iv;
  1363.         if ( LWJGLUtil.CHECKS ) {
  1364.             checkFunctionAddress(__functionAddress);
  1365.             checkBuffer(v, 3);
  1366.         }
  1367.         nglColor3iv(memAddress(v), __functionAddress);
  1368.     }
  1369.  
  1370.     // --- [ glColor3fv ] ---
  1371.  
  1372.     /** JNI method for {@link #glColor3f(ByteBuffer)} */
  1373.     public static native void nglColor3fv(long v, long __functionAddress);
  1374.  
  1375.     /**
  1376.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1377.      * <p/>
  1378.      * Pointer version of {@link #glColor3f(float, float, float)}.
  1379.      *
  1380.      * @param v the color buffer
  1381.      */
  1382.     public static void glColor3f(ByteBuffer v) {
  1383.         long __functionAddress = getInstance().glColor3fv;
  1384.         if ( LWJGLUtil.CHECKS ) {
  1385.             checkFunctionAddress(__functionAddress);
  1386.             checkBuffer(v, 3 << 2);
  1387.         }
  1388.         nglColor3fv(memAddress(v), __functionAddress);
  1389.     }
  1390.  
  1391.     /** Alternative version of: {@link #glColor3f(ByteBuffer)} */
  1392.     public static void glColor3(FloatBuffer v) {
  1393.         long __functionAddress = getInstance().glColor3fv;
  1394.         if ( LWJGLUtil.CHECKS ) {
  1395.             checkFunctionAddress(__functionAddress);
  1396.             checkBuffer(v, 3);
  1397.         }
  1398.         nglColor3fv(memAddress(v), __functionAddress);
  1399.     }
  1400.  
  1401.     // --- [ glColor3dv ] ---
  1402.  
  1403.     /** JNI method for {@link #glColor3d(ByteBuffer)} */
  1404.     public static native void nglColor3dv(long v, long __functionAddress);
  1405.  
  1406.     /**
  1407.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1408.      * <p/>
  1409.      * Pointer version of {@link #glColor3d(double, double, double)}.
  1410.      *
  1411.      * @param v the color buffer
  1412.      */
  1413.     public static void glColor3d(ByteBuffer v) {
  1414.         long __functionAddress = getInstance().glColor3dv;
  1415.         if ( LWJGLUtil.CHECKS ) {
  1416.             checkFunctionAddress(__functionAddress);
  1417.             checkBuffer(v, 3 << 3);
  1418.         }
  1419.         nglColor3dv(memAddress(v), __functionAddress);
  1420.     }
  1421.  
  1422.     /** Alternative version of: {@link #glColor3d(ByteBuffer)} */
  1423.     public static void glColor3(DoubleBuffer v) {
  1424.         long __functionAddress = getInstance().glColor3dv;
  1425.         if ( LWJGLUtil.CHECKS ) {
  1426.             checkFunctionAddress(__functionAddress);
  1427.             checkBuffer(v, 3);
  1428.         }
  1429.         nglColor3dv(memAddress(v), __functionAddress);
  1430.     }
  1431.  
  1432.     // --- [ glColor3ubv ] ---
  1433.  
  1434.     /** JNI method for {@link #glColor3ub(ByteBuffer)} */
  1435.     public static native void nglColor3ubv(long v, long __functionAddress);
  1436.  
  1437.     /**
  1438.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1439.      * <p/>
  1440.      * Pointer version of {@link #glColor3ub(byte, byte, byte)}.
  1441.      *
  1442.      * @param v the color buffer
  1443.      */
  1444.     public static void glColor3ub(ByteBuffer v) {
  1445.         long __functionAddress = getInstance().glColor3ubv;
  1446.         if ( LWJGLUtil.CHECKS ) {
  1447.             checkFunctionAddress(__functionAddress);
  1448.             checkBuffer(v, 3 << 0);
  1449.         }
  1450.         nglColor3ubv(memAddress(v), __functionAddress);
  1451.     }
  1452.  
  1453.     // --- [ glColor3usv ] ---
  1454.  
  1455.     /** JNI method for {@link #glColor3us(ByteBuffer)} */
  1456.     public static native void nglColor3usv(long v, long __functionAddress);
  1457.  
  1458.     /**
  1459.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1460.      * <p/>
  1461.      * Pointer version of {@link #glColor3us(short, short, short)}.
  1462.      *
  1463.      * @param v the color buffer
  1464.      */
  1465.     public static void glColor3us(ByteBuffer v) {
  1466.         long __functionAddress = getInstance().glColor3usv;
  1467.         if ( LWJGLUtil.CHECKS ) {
  1468.             checkFunctionAddress(__functionAddress);
  1469.             checkBuffer(v, 3 << 1);
  1470.         }
  1471.         nglColor3usv(memAddress(v), __functionAddress);
  1472.     }
  1473.  
  1474.     /** Alternative version of: {@link #glColor3us(ByteBuffer)} */
  1475.     public static void glColor3u(ShortBuffer v) {
  1476.         long __functionAddress = getInstance().glColor3usv;
  1477.         if ( LWJGLUtil.CHECKS ) {
  1478.             checkFunctionAddress(__functionAddress);
  1479.             checkBuffer(v, 3);
  1480.         }
  1481.         nglColor3usv(memAddress(v), __functionAddress);
  1482.     }
  1483.  
  1484.     // --- [ glColor3uiv ] ---
  1485.  
  1486.     /** JNI method for {@link #glColor3ui(ByteBuffer)} */
  1487.     public static native void nglColor3uiv(long v, long __functionAddress);
  1488.  
  1489.     /**
  1490.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1491.      * <p/>
  1492.      * Pointer version of {@link #glColor3ui(int, int, int)}.
  1493.      *
  1494.      * @param v the color buffer
  1495.      */
  1496.     public static void glColor3ui(ByteBuffer v) {
  1497.         long __functionAddress = getInstance().glColor3uiv;
  1498.         if ( LWJGLUtil.CHECKS ) {
  1499.             checkFunctionAddress(__functionAddress);
  1500.             checkBuffer(v, 3 << 2);
  1501.         }
  1502.         nglColor3uiv(memAddress(v), __functionAddress);
  1503.     }
  1504.  
  1505.     /** Alternative version of: {@link #glColor3ui(ByteBuffer)} */
  1506.     public static void glColor3u(IntBuffer v) {
  1507.         long __functionAddress = getInstance().glColor3uiv;
  1508.         if ( LWJGLUtil.CHECKS ) {
  1509.             checkFunctionAddress(__functionAddress);
  1510.             checkBuffer(v, 3);
  1511.         }
  1512.         nglColor3uiv(memAddress(v), __functionAddress);
  1513.     }
  1514.  
  1515.     // --- [ glColor4b ] ---
  1516.  
  1517.     /** JNI method for {@link #glColor4b(byte, byte, byte, byte)} */
  1518.     public static native void nglColor4b(byte red, byte green, byte blue, byte alpha, long __functionAddress);
  1519.  
  1520.     /**
  1521.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1522.      * <p/>
  1523.      * Sets the current color.
  1524.      *
  1525.      * @param red   the red component of the current color
  1526.      * @param green the green component of the current color
  1527.      * @param blue  the blue component of the current color
  1528.      * @param alpha the alpha component of the current color
  1529.      */
  1530.     public static void glColor4b(byte red, byte green, byte blue, byte alpha) {
  1531.         long __functionAddress = getInstance().glColor4b;
  1532.         if ( LWJGLUtil.CHECKS )
  1533.             checkFunctionAddress(__functionAddress);
  1534.         nglColor4b(red, green, blue, alpha, __functionAddress);
  1535.     }
  1536.  
  1537.     // --- [ glColor4s ] ---
  1538.  
  1539.     /** JNI method for {@link #glColor4s(short, short, short, short)} */
  1540.     public static native void nglColor4s(short red, short green, short blue, short alpha, long __functionAddress);
  1541.  
  1542.     /**
  1543.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1544.      * <p/>
  1545.      * Short version of {@link #glColor4b(byte, byte, byte, byte)}
  1546.      *
  1547.      * @param red   the red component of the current color
  1548.      * @param green the green component of the current color
  1549.      * @param blue  the blue component of the current color
  1550.      * @param alpha the alpha component of the current color
  1551.      */
  1552.     public static void glColor4s(short red, short green, short blue, short alpha) {
  1553.         long __functionAddress = getInstance().glColor4s;
  1554.         if ( LWJGLUtil.CHECKS )
  1555.             checkFunctionAddress(__functionAddress);
  1556.         nglColor4s(red, green, blue, alpha, __functionAddress);
  1557.     }
  1558.  
  1559.     // --- [ glColor4i ] ---
  1560.  
  1561.     /** JNI method for {@link #glColor4i(int, int, int, int)} */
  1562.     public static native void nglColor4i(int red, int green, int blue, int alpha, long __functionAddress);
  1563.  
  1564.     /**
  1565.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1566.      * <p/>
  1567.      * Integer version of {@link #glColor4b(byte, byte, byte, byte)}
  1568.      *
  1569.      * @param red   the red component of the current color
  1570.      * @param green the green component of the current color
  1571.      * @param blue  the blue component of the current color
  1572.      * @param alpha the alpha component of the current color
  1573.      */
  1574.     public static void glColor4i(int red, int green, int blue, int alpha) {
  1575.         long __functionAddress = getInstance().glColor4i;
  1576.         if ( LWJGLUtil.CHECKS )
  1577.             checkFunctionAddress(__functionAddress);
  1578.         nglColor4i(red, green, blue, alpha, __functionAddress);
  1579.     }
  1580.  
  1581.     // --- [ glColor4f ] ---
  1582.  
  1583.     /** JNI method for {@link #glColor4f(float, float, float, float)} */
  1584.     public static native void nglColor4f(float red, float green, float blue, float alpha, long __functionAddress);
  1585.  
  1586.     /**
  1587.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1588.      * <p/>
  1589.      * Float version of {@link #glColor4b(byte, byte, byte, byte)}
  1590.      *
  1591.      * @param red   the red component of the current color
  1592.      * @param green the green component of the current color
  1593.      * @param blue  the blue component of the current color
  1594.      * @param alpha the alpha component of the current color
  1595.      */
  1596.     public static void glColor4f(float red, float green, float blue, float alpha) {
  1597.         long __functionAddress = getInstance().glColor4f;
  1598.         if ( LWJGLUtil.CHECKS )
  1599.             checkFunctionAddress(__functionAddress);
  1600.         nglColor4f(red, green, blue, alpha, __functionAddress);
  1601.     }
  1602.  
  1603.     // --- [ glColor4d ] ---
  1604.  
  1605.     /** JNI method for {@link #glColor4d(double, double, double, double)} */
  1606.     public static native void nglColor4d(double red, double green, double blue, double alpha, long __functionAddress);
  1607.  
  1608.     /**
  1609.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1610.      * <p/>
  1611.      * Double version of {@link #glColor4b(byte, byte, byte, byte)}
  1612.      *
  1613.      * @param red   the red component of the current color
  1614.      * @param green the green component of the current color
  1615.      * @param blue  the blue component of the current color
  1616.      * @param alpha the alpha component of the current color
  1617.      */
  1618.     public static void glColor4d(double red, double green, double blue, double alpha) {
  1619.         long __functionAddress = getInstance().glColor4d;
  1620.         if ( LWJGLUtil.CHECKS )
  1621.             checkFunctionAddress(__functionAddress);
  1622.         nglColor4d(red, green, blue, alpha, __functionAddress);
  1623.     }
  1624.  
  1625.     // --- [ glColor4ub ] ---
  1626.  
  1627.     /** JNI method for {@link #glColor4ub(byte, byte, byte, byte)} */
  1628.     public static native void nglColor4ub(byte red, byte green, byte blue, byte alpha, long __functionAddress);
  1629.  
  1630.     /**
  1631.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1632.      * <p/>
  1633.      * Unsigned version of {@link #glColor4b(byte, byte, byte, byte)}
  1634.      *
  1635.      * @param red   the red component of the current color
  1636.      * @param green the green component of the current color
  1637.      * @param blue  the blue component of the current color
  1638.      * @param alpha the alpha component of the current color
  1639.      */
  1640.     public static void glColor4ub(byte red, byte green, byte blue, byte alpha) {
  1641.         long __functionAddress = getInstance().glColor4ub;
  1642.         if ( LWJGLUtil.CHECKS )
  1643.             checkFunctionAddress(__functionAddress);
  1644.         nglColor4ub(red, green, blue, alpha, __functionAddress);
  1645.     }
  1646.  
  1647.     // --- [ glColor4us ] ---
  1648.  
  1649.     /** JNI method for {@link #glColor4us(short, short, short, short)} */
  1650.     public static native void nglColor4us(short red, short green, short blue, short alpha, long __functionAddress);
  1651.  
  1652.     /**
  1653.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1654.      * <p/>
  1655.      * Unsigned short version of {@link #glColor4b(byte, byte, byte, byte)}
  1656.      *
  1657.      * @param red   the red component of the current color
  1658.      * @param green the green component of the current color
  1659.      * @param blue  the blue component of the current color
  1660.      * @param alpha the alpha component of the current color
  1661.      */
  1662.     public static void glColor4us(short red, short green, short blue, short alpha) {
  1663.         long __functionAddress = getInstance().glColor4us;
  1664.         if ( LWJGLUtil.CHECKS )
  1665.             checkFunctionAddress(__functionAddress);
  1666.         nglColor4us(red, green, blue, alpha, __functionAddress);
  1667.     }
  1668.  
  1669.     // --- [ glColor4ui ] ---
  1670.  
  1671.     /** JNI method for {@link #glColor4ui(int, int, int, int)} */
  1672.     public static native void nglColor4ui(int red, int green, int blue, int alpha, long __functionAddress);
  1673.  
  1674.     /**
  1675.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1676.      * <p/>
  1677.      * Unsigned int version of {@link #glColor4b(byte, byte, byte, byte)}
  1678.      *
  1679.      * @param red   the red component of the current color
  1680.      * @param green the green component of the current color
  1681.      * @param blue  the blue component of the current color
  1682.      * @param alpha the alpha component of the current color
  1683.      */
  1684.     public static void glColor4ui(int red, int green, int blue, int alpha) {
  1685.         long __functionAddress = getInstance().glColor4ui;
  1686.         if ( LWJGLUtil.CHECKS )
  1687.             checkFunctionAddress(__functionAddress);
  1688.         nglColor4ui(red, green, blue, alpha, __functionAddress);
  1689.     }
  1690.  
  1691.     // --- [ glColor4bv ] ---
  1692.  
  1693.     /** JNI method for {@link #glColor4b(ByteBuffer)} */
  1694.     public static native void nglColor4bv(long v, long __functionAddress);
  1695.  
  1696.     /**
  1697.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1698.      * <p/>
  1699.      * Pointer version of {@link #glColor4b(byte, byte, byte, byte)}.
  1700.      *
  1701.      * @param v the color buffer
  1702.      */
  1703.     public static void glColor4b(ByteBuffer v) {
  1704.         long __functionAddress = getInstance().glColor4bv;
  1705.         if ( LWJGLUtil.CHECKS ) {
  1706.             checkFunctionAddress(__functionAddress);
  1707.             checkBuffer(v, 4 << 0);
  1708.         }
  1709.         nglColor4bv(memAddress(v), __functionAddress);
  1710.     }
  1711.  
  1712.     // --- [ glColor4sv ] ---
  1713.  
  1714.     /** JNI method for {@link #glColor4s(ByteBuffer)} */
  1715.     public static native void nglColor4sv(long v, long __functionAddress);
  1716.  
  1717.     /**
  1718.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1719.      * <p/>
  1720.      * Pointer version of {@link #glColor4s(short, short, short, short)}.
  1721.      *
  1722.      * @param v the color buffer
  1723.      */
  1724.     public static void glColor4s(ByteBuffer v) {
  1725.         long __functionAddress = getInstance().glColor4sv;
  1726.         if ( LWJGLUtil.CHECKS ) {
  1727.             checkFunctionAddress(__functionAddress);
  1728.             checkBuffer(v, 4 << 1);
  1729.         }
  1730.         nglColor4sv(memAddress(v), __functionAddress);
  1731.     }
  1732.  
  1733.     /** Alternative version of: {@link #glColor4s(ByteBuffer)} */
  1734.     public static void glColor4(ShortBuffer v) {
  1735.         long __functionAddress = getInstance().glColor4sv;
  1736.         if ( LWJGLUtil.CHECKS ) {
  1737.             checkFunctionAddress(__functionAddress);
  1738.             checkBuffer(v, 4);
  1739.         }
  1740.         nglColor4sv(memAddress(v), __functionAddress);
  1741.     }
  1742.  
  1743.     // --- [ glColor4iv ] ---
  1744.  
  1745.     /** JNI method for {@link #glColor4i(ByteBuffer)} */
  1746.     public static native void nglColor4iv(long v, long __functionAddress);
  1747.  
  1748.     /**
  1749.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1750.      * <p/>
  1751.      * Pointer version of {@link #glColor4i(int, int, int, int)}.
  1752.      *
  1753.      * @param v the color buffer
  1754.      */
  1755.     public static void glColor4i(ByteBuffer v) {
  1756.         long __functionAddress = getInstance().glColor4iv;
  1757.         if ( LWJGLUtil.CHECKS ) {
  1758.             checkFunctionAddress(__functionAddress);
  1759.             checkBuffer(v, 4 << 2);
  1760.         }
  1761.         nglColor4iv(memAddress(v), __functionAddress);
  1762.     }
  1763.  
  1764.     /** Alternative version of: {@link #glColor4i(ByteBuffer)} */
  1765.     public static void glColor4(IntBuffer v) {
  1766.         long __functionAddress = getInstance().glColor4iv;
  1767.         if ( LWJGLUtil.CHECKS ) {
  1768.             checkFunctionAddress(__functionAddress);
  1769.             checkBuffer(v, 4);
  1770.         }
  1771.         nglColor4iv(memAddress(v), __functionAddress);
  1772.     }
  1773.  
  1774.     // --- [ glColor4fv ] ---
  1775.  
  1776.     /** JNI method for {@link #glColor4f(ByteBuffer)} */
  1777.     public static native void nglColor4fv(long v, long __functionAddress);
  1778.  
  1779.     /**
  1780.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1781.      * <p/>
  1782.      * Pointer version of {@link #glColor4f(float, float, float, float)}.
  1783.      *
  1784.      * @param v the color buffer
  1785.      */
  1786.     public static void glColor4f(ByteBuffer v) {
  1787.         long __functionAddress = getInstance().glColor4fv;
  1788.         if ( LWJGLUtil.CHECKS ) {
  1789.             checkFunctionAddress(__functionAddress);
  1790.             checkBuffer(v, 4 << 2);
  1791.         }
  1792.         nglColor4fv(memAddress(v), __functionAddress);
  1793.     }
  1794.  
  1795.     /** Alternative version of: {@link #glColor4f(ByteBuffer)} */
  1796.     public static void glColor4(FloatBuffer v) {
  1797.         long __functionAddress = getInstance().glColor4fv;
  1798.         if ( LWJGLUtil.CHECKS ) {
  1799.             checkFunctionAddress(__functionAddress);
  1800.             checkBuffer(v, 4);
  1801.         }
  1802.         nglColor4fv(memAddress(v), __functionAddress);
  1803.     }
  1804.  
  1805.     // --- [ glColor4dv ] ---
  1806.  
  1807.     /** JNI method for {@link #glColor4d(ByteBuffer)} */
  1808.     public static native void nglColor4dv(long v, long __functionAddress);
  1809.  
  1810.     /**
  1811.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1812.      * <p/>
  1813.      * Pointer version of {@link #glColor4d(double, double, double, double)}.
  1814.      *
  1815.      * @param v the color buffer
  1816.      */
  1817.     public static void glColor4d(ByteBuffer v) {
  1818.         long __functionAddress = getInstance().glColor4dv;
  1819.         if ( LWJGLUtil.CHECKS ) {
  1820.             checkFunctionAddress(__functionAddress);
  1821.             checkBuffer(v, 4 << 3);
  1822.         }
  1823.         nglColor4dv(memAddress(v), __functionAddress);
  1824.     }
  1825.  
  1826.     /** Alternative version of: {@link #glColor4d(ByteBuffer)} */
  1827.     public static void glColor4(DoubleBuffer v) {
  1828.         long __functionAddress = getInstance().glColor4dv;
  1829.         if ( LWJGLUtil.CHECKS ) {
  1830.             checkFunctionAddress(__functionAddress);
  1831.             checkBuffer(v, 4);
  1832.         }
  1833.         nglColor4dv(memAddress(v), __functionAddress);
  1834.     }
  1835.  
  1836.     // --- [ glColor4ubv ] ---
  1837.  
  1838.     /** JNI method for {@link #glColor4ub(ByteBuffer)} */
  1839.     public static native void nglColor4ubv(long v, long __functionAddress);
  1840.  
  1841.     /**
  1842.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1843.      * <p/>
  1844.      * Pointer version of {@link #glColor4ub(byte, byte, byte, byte)}.
  1845.      *
  1846.      * @param v the color buffer
  1847.      */
  1848.     public static void glColor4ub(ByteBuffer v) {
  1849.         long __functionAddress = getInstance().glColor4ubv;
  1850.         if ( LWJGLUtil.CHECKS ) {
  1851.             checkFunctionAddress(__functionAddress);
  1852.             checkBuffer(v, 4 << 0);
  1853.         }
  1854.         nglColor4ubv(memAddress(v), __functionAddress);
  1855.     }
  1856.  
  1857.     // --- [ glColor4usv ] ---
  1858.  
  1859.     /** JNI method for {@link #glColor4us(ByteBuffer)} */
  1860.     public static native void nglColor4usv(long v, long __functionAddress);
  1861.  
  1862.     /**
  1863.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1864.      * <p/>
  1865.      * Pointer version of {@link #glColor4us(short, short, short, short)}.
  1866.      *
  1867.      * @param v the color buffer
  1868.      */
  1869.     public static void glColor4us(ByteBuffer v) {
  1870.         long __functionAddress = getInstance().glColor4usv;
  1871.         if ( LWJGLUtil.CHECKS ) {
  1872.             checkFunctionAddress(__functionAddress);
  1873.             checkBuffer(v, 4 << 1);
  1874.         }
  1875.         nglColor4usv(memAddress(v), __functionAddress);
  1876.     }
  1877.  
  1878.     /** Alternative version of: {@link #glColor4us(ByteBuffer)} */
  1879.     public static void glColor4u(ShortBuffer v) {
  1880.         long __functionAddress = getInstance().glColor4usv;
  1881.         if ( LWJGLUtil.CHECKS ) {
  1882.             checkFunctionAddress(__functionAddress);
  1883.             checkBuffer(v, 4);
  1884.         }
  1885.         nglColor4usv(memAddress(v), __functionAddress);
  1886.     }
  1887.  
  1888.     // --- [ glColor4uiv ] ---
  1889.  
  1890.     /** JNI method for {@link #glColor4ui(ByteBuffer)} */
  1891.     public static native void nglColor4uiv(long v, long __functionAddress);
  1892.  
  1893.     /**
  1894.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1895.      * <p/>
  1896.      * Pointer version of {@link #glColor4ui(int, int, int, int)}.
  1897.      *
  1898.      * @param v the color buffer
  1899.      */
  1900.     public static void glColor4ui(ByteBuffer v) {
  1901.         long __functionAddress = getInstance().glColor4uiv;
  1902.         if ( LWJGLUtil.CHECKS ) {
  1903.             checkFunctionAddress(__functionAddress);
  1904.             checkBuffer(v, 4 << 2);
  1905.         }
  1906.         nglColor4uiv(memAddress(v), __functionAddress);
  1907.     }
  1908.  
  1909.     /** Alternative version of: {@link #glColor4ui(ByteBuffer)} */
  1910.     public static void glColor4u(IntBuffer v) {
  1911.         long __functionAddress = getInstance().glColor4uiv;
  1912.         if ( LWJGLUtil.CHECKS ) {
  1913.             checkFunctionAddress(__functionAddress);
  1914.             checkBuffer(v, 4);
  1915.         }
  1916.         nglColor4uiv(memAddress(v), __functionAddress);
  1917.     }
  1918.  
  1919.     // --- [ glColorMask ] ---
  1920.  
  1921.     /** JNI method for {@link #glColorMask(boolean, boolean, boolean, boolean)} */
  1922.     public static native void nglColorMask(boolean red, boolean green, boolean blue, boolean alpha, long __functionAddress);
  1923.  
  1924.     /**
  1925.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glColorMask.xml">OpenGL SDK Reference</a>
  1926.      * <p/>
  1927.      * Masks the writing of R, G, B and A values to all draw buffers. In the initial state, all color values are enabled for writing for all draw buffers.
  1928.      *
  1929.      * @param red   whether R values are written or not
  1930.      * @param green whether G values are written or not
  1931.      * @param blue  whether B values are written or not
  1932.      * @param alpha whether A values are written or not
  1933.      */
  1934.     public static void glColorMask(boolean red, boolean green, boolean blue, boolean alpha) {
  1935.         long __functionAddress = getInstance().glColorMask;
  1936.         if ( LWJGLUtil.CHECKS )
  1937.             checkFunctionAddress(__functionAddress);
  1938.         nglColorMask(red, green, blue, alpha, __functionAddress);
  1939.     }
  1940.  
  1941.     // --- [ glColorMaterial ] ---
  1942.  
  1943.     /** JNI method for {@link #glColorMaterial(int, int)} */
  1944.     public static native void nglColorMaterial(int face, int mode, long __functionAddress);
  1945.  
  1946.     /**
  1947.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1948.      * <p/>
  1949.      * It is possible to attach one or more material properties to the current color, so that they continuously track its component values. This behavior is
  1950.      * enabled and disabled by calling {@link #glEnable(int)} or {@link #glDisable(int)} with the symbolic value {@link #GL_COLOR_MATERIAL}. This function controls which
  1951.      * of these modes is selected.
  1952.      *
  1953.      * @param face specifies which material face is affected by the current color. One of:<p/>{@link #GL_FRONT}, {@link #GL_BACK}, {@link #GL_FRONT_AND_BACK}
  1954.      * @param mode specifies which material property or properties track the current color. One of:<p/>{@link #GL_EMISSION}, {@link #GL_AMBIENT}, {@link #GL_DIFFUSE}, {@link #GL_SPECULAR}, {@link #GL_AMBIENT_AND_DIFFUSE}
  1955.      */
  1956.     public static void glColorMaterial(int face, int mode) {
  1957.         long __functionAddress = getInstance().glColorMaterial;
  1958.         if ( LWJGLUtil.CHECKS )
  1959.             checkFunctionAddress(__functionAddress);
  1960.         nglColorMaterial(face, mode, __functionAddress);
  1961.     }
  1962.  
  1963.     // --- [ glColorPointer ] ---
  1964.  
  1965.     /** JNI method for {@link #glColorPointer(int, int, int, ByteBuffer)} */
  1966.     public static native void nglColorPointer(int size, int type, int stride, long pointer, long __functionAddress);
  1967.  
  1968.     /**
  1969.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  1970.      * <p/>
  1971.      * Specifies the location and organization of a color array.
  1972.      *
  1973.      * @param size    the number of values per vertex that are stored in the array, as well as their component ordering. One of:<p/>3, 4, {@link GL12#GL_BGRA}
  1974.      * @param type    the data type of the values stored in the array. One of:<p/>{@link #GL_BYTE}, {@link #GL_UNSIGNED_BYTE}, {@link #GL_SHORT}, {@link #GL_UNSIGNED_SHORT}, {@link #GL_INT}, {@link #GL_UNSIGNED_INT}, {@link GL30#GL_HALF}, {@link #GL_FLOAT}, {@link #GL_DOUBLE}, {@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV}, {@link GL12#GL_INT_2_10_10_10_REV}
  1975.      * @param stride  the vertex stride in bytes. If specified as zero, then array elements are stored sequentially
  1976.      * @param pointer the color array data
  1977.      */
  1978.     public static void glColorPointer(int size, int type, int stride, ByteBuffer pointer) {
  1979.         long __functionAddress = getInstance().glColorPointer;
  1980.         if ( LWJGLUtil.CHECKS ) {
  1981.             checkFunctionAddress(__functionAddress);
  1982.             GLChecks.ensureBufferObject(0x8894, false);
  1983.         }
  1984.         nglColorPointer(size, type, stride, memAddress(pointer), __functionAddress);
  1985.     }
  1986.  
  1987.     /** Buffer object offset version of: {@link #glColorPointer(int, int, int, ByteBuffer)} */
  1988.     public static void glColorPointer(int size, int type, int stride, long pointerOffset) {
  1989.         long __functionAddress = getInstance().glColorPointer;
  1990.         if ( LWJGLUtil.CHECKS ) {
  1991.             checkFunctionAddress(__functionAddress);
  1992.             GLChecks.ensureBufferObject(0x8894, true);
  1993.         }
  1994.         nglColorPointer(size, type, stride, pointerOffset, __functionAddress);
  1995.     }
  1996.  
  1997.     /** GL_UNSIGNED_BYTE / GL_BYTE version of: {@link #glColorPointer(int, int, int, ByteBuffer)} */
  1998.     public static void glColorPointer(int size, boolean unsigned, int stride, ByteBuffer pointer) {
  1999.         long __functionAddress = getInstance().glColorPointer;
  2000.         if ( LWJGLUtil.CHECKS ) {
  2001.             checkFunctionAddress(__functionAddress);
  2002.             GLChecks.ensureBufferObject(0x8894, false);
  2003.         }
  2004.         nglColorPointer(size, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, stride, memAddress(pointer), __functionAddress);
  2005.     }
  2006.  
  2007.     /** GL_FLOAT version of: {@link #glColorPointer(int, int, int, ByteBuffer)} */
  2008.     public static void glColorPointer(int size, int stride, FloatBuffer pointer) {
  2009.         long __functionAddress = getInstance().glColorPointer;
  2010.         if ( LWJGLUtil.CHECKS ) {
  2011.             checkFunctionAddress(__functionAddress);
  2012.             GLChecks.ensureBufferObject(0x8894, false);
  2013.         }
  2014.         nglColorPointer(size, GL11.GL_FLOAT, stride, memAddress(pointer), __functionAddress);
  2015.     }
  2016.  
  2017.     // --- [ glCopyPixels ] ---
  2018.  
  2019.     /** JNI method for {@link #glCopyPixels(int, int, int, int, int)} */
  2020.     public static native void nglCopyPixels(int x, int y, int width, int height, int type, long __functionAddress);
  2021.  
  2022.     /**
  2023.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glCopyPixels.xml">OpenGL SDK Reference</a>
  2024.      * <p/>
  2025.      * Transfers a rectangle of pixel values from one region of the read framebuffer to another in the draw framebuffer
  2026.      *
  2027.      * @param x      the left framebuffer pixel coordinate
  2028.      * @param y      the lower framebuffer pixel coordinate
  2029.      * @param width  the rectangle width
  2030.      * @param height the rectangle height
  2031.      * @param type   Indicates the type of values to be transfered. One of:<p/>{@link #GL_COLOR}, {@link #GL_STENCIL}, {@link #GL_DEPTH}, {@link GL30#GL_DEPTH_STENCIL}
  2032.      */
  2033.     public static void glCopyPixels(int x, int y, int width, int height, int type) {
  2034.         long __functionAddress = getInstance().glCopyPixels;
  2035.         if ( LWJGLUtil.CHECKS )
  2036.             checkFunctionAddress(__functionAddress);
  2037.         nglCopyPixels(x, y, width, height, type, __functionAddress);
  2038.     }
  2039.  
  2040.     // --- [ glCullFace ] ---
  2041.  
  2042.     /** JNI method for {@link #glCullFace(int)} */
  2043.     public static native void nglCullFace(int mode, long __functionAddress);
  2044.  
  2045.     /**
  2046.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glCullFace.xml">OpenGL SDK Reference</a>
  2047.      * <p/>
  2048.      * Specifies which polygon faces are culled if {@link #GL_CULL_FACE} is enabled. Front-facing polygons are rasterized if either culling is disabled or the
  2049.      * CullFace mode is {@link #GL_BACK} while back-facing polygons are rasterized only if either culling is disabled or the CullFace mode is
  2050.      * {@link #GL_FRONT}. The initial setting of the CullFace mode is {@link #GL_BACK}. Initially, culling is disabled.
  2051.      *
  2052.      * @param mode the CullFace mode. One of:<p/>{@link #GL_FRONT}, {@link #GL_BACK}, {@link #GL_FRONT_AND_BACK}
  2053.      */
  2054.     public static void glCullFace(int mode) {
  2055.         long __functionAddress = getInstance().glCullFace;
  2056.         if ( LWJGLUtil.CHECKS )
  2057.             checkFunctionAddress(__functionAddress);
  2058.         nglCullFace(mode, __functionAddress);
  2059.     }
  2060.  
  2061.     // --- [ glDeleteLists ] ---
  2062.  
  2063.     /** JNI method for {@link #glDeleteLists(int, int)} */
  2064.     public static native void nglDeleteLists(int list, int range, long __functionAddress);
  2065.  
  2066.     /**
  2067.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2068.      * <p/>
  2069.      * Deletes a contiguous group of display lists. All information about the display lists is lost, and the indices become unused. Indices to which no display
  2070.      * list corresponds are ignored. If {@code range} is zero, nothing happens.
  2071.      *
  2072.      * @param list  the index of the first display list to be deleted
  2073.      * @param range the number of display lists to be deleted
  2074.      */
  2075.     public static void glDeleteLists(int list, int range) {
  2076.         long __functionAddress = getInstance().glDeleteLists;
  2077.         if ( LWJGLUtil.CHECKS )
  2078.             checkFunctionAddress(__functionAddress);
  2079.         nglDeleteLists(list, range, __functionAddress);
  2080.     }
  2081.  
  2082.     // --- [ glDepthFunc ] ---
  2083.  
  2084.     /** JNI method for {@link #glDepthFunc(int)} */
  2085.     public static native void nglDepthFunc(int func, long __functionAddress);
  2086.  
  2087.     /**
  2088.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glDepthFunc.xml">OpenGL SDK Reference</a>
  2089.      * <p/>
  2090.      * Specifies the comparison that takes place during the depth buffer test (when {@link #GL_DEPTH_TEST} is enabled).
  2091.      *
  2092.      * @param func the depth test comparison. One of:<p/>{@link #GL_NEVER}, {@link #GL_ALWAYS}, {@link #GL_LESS}, {@link #GL_LEQUAL}, {@link #GL_EQUAL}, {@link #GL_GREATER}, {@link #GL_GEQUAL}, {@link #GL_NOTEQUAL}
  2093.      */
  2094.     public static void glDepthFunc(int func) {
  2095.         long __functionAddress = getInstance().glDepthFunc;
  2096.         if ( LWJGLUtil.CHECKS )
  2097.             checkFunctionAddress(__functionAddress);
  2098.         nglDepthFunc(func, __functionAddress);
  2099.     }
  2100.  
  2101.     // --- [ glDepthMask ] ---
  2102.  
  2103.     /** JNI method for {@link #glDepthMask(boolean)} */
  2104.     public static native void nglDepthMask(boolean flag, long __functionAddress);
  2105.  
  2106.     /**
  2107.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glDepthMask.xml">OpenGL SDK Reference</a>
  2108.      * <p/>
  2109.      * Masks the writing of depth values to the depth buffer. In the initial state, the depth buffer is enabled for writing.
  2110.      *
  2111.      * @param flag whether depth values are written or not.
  2112.      */
  2113.     public static void glDepthMask(boolean flag) {
  2114.         long __functionAddress = getInstance().glDepthMask;
  2115.         if ( LWJGLUtil.CHECKS )
  2116.             checkFunctionAddress(__functionAddress);
  2117.         nglDepthMask(flag, __functionAddress);
  2118.     }
  2119.  
  2120.     // --- [ glDepthRange ] ---
  2121.  
  2122.     /** JNI method for {@link #glDepthRange(double, double)} */
  2123.     public static native void nglDepthRange(double zNear, double zFar, long __functionAddress);
  2124.  
  2125.     /**
  2126.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glDepthRange.xml">OpenGL SDK Reference</a>
  2127.      * <p/>
  2128.      * Sets the depth range for all viewports to the same values.
  2129.      *
  2130.      * @param zNear the near depth range
  2131.      * @param zFar  the far depth range
  2132.      */
  2133.     public static void glDepthRange(double zNear, double zFar) {
  2134.         long __functionAddress = getInstance().glDepthRange;
  2135.         if ( LWJGLUtil.CHECKS )
  2136.             checkFunctionAddress(__functionAddress);
  2137.         nglDepthRange(zNear, zFar, __functionAddress);
  2138.     }
  2139.  
  2140.     // --- [ glDisableClientState ] ---
  2141.  
  2142.     /** JNI method for {@link #glDisableClientState(int)} */
  2143.     public static native void nglDisableClientState(int array, long __functionAddress);
  2144.  
  2145.     /**
  2146.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2147.      * <p/>
  2148.      * Disables the specified fixed-function attribute array.
  2149.      *
  2150.      * @param array the attribute array to disable. One of:<p/>{@link #GL_VERTEX_ARRAY}, {@link #GL_NORMAL_ARRAY}, {@link #GL_COLOR_ARRAY}, {@link #GL_SECONDARY_COLOR_ARRAY}, {@link #GL_EDGE_FLAG_ARRAY}, {@link #GL_FOG_COORD_ARRAY}, {@link #GL_TEXTURE_COORD_ARRAY}
  2151.      */
  2152.     public static void glDisableClientState(int array) {
  2153.         long __functionAddress = getInstance().glDisableClientState;
  2154.         if ( LWJGLUtil.CHECKS )
  2155.             checkFunctionAddress(__functionAddress);
  2156.         nglDisableClientState(array, __functionAddress);
  2157.     }
  2158.  
  2159.     // --- [ glDrawArrays ] ---
  2160.  
  2161.     /** JNI method for {@link #glDrawArrays(int, int, int)} */
  2162.     public static native void nglDrawArrays(int mode, int first, int count, long __functionAddress);
  2163.  
  2164.     /**
  2165.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glDrawArrays.xml">OpenGL SDK Reference</a>
  2166.      * <p/>
  2167.      * Constructs a sequence of geometric primitives by successively transferring elements for {@code count} vertices. Elements {@code first} through
  2168.      * {@code first + count &ndash; 1} of each enabled non-instanced array are transferred to the GL.
  2169.      * <p/>
  2170.      * If an array corresponding to an attribute required by a vertex shader is not enabled, then the corresponding element is taken from the current attribute
  2171.      * state. If an array is enabled, the corresponding current vertex attribute value is unaffected by the execution of this function.
  2172.      *
  2173.      * @param mode  the kind of primitives being constructed
  2174.      * @param first the first vertex to transfer to the GL
  2175.      * @param count the number of vertices after {@code first} to transfer to the GL
  2176.      */
  2177.     public static void glDrawArrays(int mode, int first, int count) {
  2178.         long __functionAddress = getInstance().glDrawArrays;
  2179.         if ( LWJGLUtil.CHECKS )
  2180.             checkFunctionAddress(__functionAddress);
  2181.         nglDrawArrays(mode, first, count, __functionAddress);
  2182.     }
  2183.  
  2184.     // --- [ glDrawBuffer ] ---
  2185.  
  2186.     /** JNI method for {@link #glDrawBuffer(int)} */
  2187.     public static native void nglDrawBuffer(int buf, long __functionAddress);
  2188.  
  2189.     /**
  2190.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glDrawBuffer.xml">OpenGL SDK Reference</a>
  2191.      * <p/>
  2192.      * Defines the color buffer to which fragment color zero is written.
  2193.      * <p/>
  2194.      * Acceptable values for {@code buf} depend on whether the GL is using the default framebuffer (i.e., {@link GL30#GL_DRAW_FRAMEBUFFER_BINDING} is zero), or
  2195.      * a framebuffer object (i.e., {@link GL30#DRAW_FRAMEBUFFER_BINDING} is non-zero). In the initial state, the GL is bound to the default framebuffer.
  2196.      *
  2197.      * @param buf the color buffer to draw to. One of:<p/>{@link #GL_NONE}, {@link #GL_FRONT_LEFT}, {@link #GL_FRONT_RIGHT}, {@link #GL_BACK_LEFT}, {@link #GL_BACK_RIGHT}, {@link #GL_FRONT}, {@link #GL_BACK}, {@link #GL_LEFT}, {@link #GL_RIGHT}, {@link #GL_FRONT_AND_BACK}, {@link #GL_AUX0}, {@link #GL_AUX1}, {@link #GL_AUX2}, {@link #GL_AUX3}, {@link GL30#GL_COLOR_ATTACHMENT0}, GL30.GL_COLOR_ATTACHMENT[1-15]
  2198.      */
  2199.     public static void glDrawBuffer(int buf) {
  2200.         long __functionAddress = getInstance().glDrawBuffer;
  2201.         if ( LWJGLUtil.CHECKS )
  2202.             checkFunctionAddress(__functionAddress);
  2203.         nglDrawBuffer(buf, __functionAddress);
  2204.     }
  2205.  
  2206.     // --- [ glDrawElements ] ---
  2207.  
  2208.     /** JNI method for {@link #glDrawElements(int, int, int, ByteBuffer)} */
  2209.     public static native void nglDrawElements(int mode, int count, int type, long indices, long __functionAddress);
  2210.  
  2211.     /**
  2212.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glDrawElements.xml">OpenGL SDK Reference</a>
  2213.      * <p/>
  2214.      * Constructs a sequence of geometric primitives by successively transferring elements for {@code count} vertices to the GL.
  2215.      * The i<sup>th</sup> element transferred by {@code DrawElements} will be taken from element {@code indices[i]} (if no element array buffer is bound), or
  2216.      * from the element whose index is stored in the currently bound element array buffer at offset {@code indices + i}.
  2217.      *
  2218.      * @param mode    the kind of primitives being constructed. One of:<p/>{@link #GL_POINTS}, {@link #GL_LINE_STRIP}, {@link #GL_LINE_LOOP}, {@link #GL_LINES}, {@link #GL_POLYGON}, {@link #GL_TRIANGLE_STRIP}, {@link #GL_TRIANGLE_FAN}, {@link #GL_TRIANGLES}, {@link #GL_QUAD_STRIP}, {@link #GL_QUADS}, {@link GL32#GL_LINES_ADJACENCY}, {@link GL32#GL_LINE_STRIP_ADJACENCY}, {@link GL32#GL_TRIANGLES_ADJACENCY}, {@link GL32#GL_TRIANGLE_STRIP_ADJACENCY}, {@link GL40#GL_PATCHES}
  2219.      * @param count   the number of vertices to transfer to the GL
  2220.      * @param type    indicates the type of index values in {@code indices}. One of:<p/>{@link #GL_UNSIGNED_BYTE}, {@link #GL_UNSIGNED_SHORT}, {@link #GL_UNSIGNED_INT}
  2221.      * @param indices the index values
  2222.      */
  2223.     public static void glDrawElements(int mode, int count, int type, ByteBuffer indices) {
  2224.         long __functionAddress = getInstance().glDrawElements;
  2225.         if ( LWJGLUtil.CHECKS ) {
  2226.             checkFunctionAddress(__functionAddress);
  2227.             checkBuffer(indices, count * GLChecks.translateTypeToBytes(type));
  2228.             GLChecks.ensureBufferObject(0x8895, false);
  2229.         }
  2230.         nglDrawElements(mode, count, type, memAddress(indices), __functionAddress);
  2231.     }
  2232.  
  2233.     /** Buffer object offset version of: {@link #glDrawElements(int, int, int, ByteBuffer)} */
  2234.     public static void glDrawElements(int mode, int count, int type, long indicesOffset) {
  2235.         long __functionAddress = getInstance().glDrawElements;
  2236.         if ( LWJGLUtil.CHECKS ) {
  2237.             checkFunctionAddress(__functionAddress);
  2238.             GLChecks.ensureBufferObject(0x8895, true);
  2239.         }
  2240.         nglDrawElements(mode, count, type, indicesOffset, __functionAddress);
  2241.     }
  2242.  
  2243.     /** GL_UNSIGNED_BYTE version of: {@link #glDrawElements(int, int, int, ByteBuffer)} */
  2244.     public static void glDrawElements(int mode, ByteBuffer indices) {
  2245.         long __functionAddress = getInstance().glDrawElements;
  2246.         if ( LWJGLUtil.CHECKS ) {
  2247.             checkFunctionAddress(__functionAddress);
  2248.             GLChecks.ensureBufferObject(0x8895, false);
  2249.         }
  2250.         nglDrawElements(mode, indices.remaining(), GL11.GL_UNSIGNED_BYTE, memAddress(indices), __functionAddress);
  2251.     }
  2252.  
  2253.     /** GL_UNSIGNED_SHORT version of: {@link #glDrawElements(int, int, int, ByteBuffer)} */
  2254.     public static void glDrawElements(int mode, ShortBuffer indices) {
  2255.         long __functionAddress = getInstance().glDrawElements;
  2256.         if ( LWJGLUtil.CHECKS ) {
  2257.             checkFunctionAddress(__functionAddress);
  2258.             GLChecks.ensureBufferObject(0x8895, false);
  2259.         }
  2260.         nglDrawElements(mode, indices.remaining(), GL11.GL_UNSIGNED_SHORT, memAddress(indices), __functionAddress);
  2261.     }
  2262.  
  2263.     /** GL_UNSIGNED_INT version of: {@link #glDrawElements(int, int, int, ByteBuffer)} */
  2264.     public static void glDrawElements(int mode, IntBuffer indices) {
  2265.         long __functionAddress = getInstance().glDrawElements;
  2266.         if ( LWJGLUtil.CHECKS ) {
  2267.             checkFunctionAddress(__functionAddress);
  2268.             GLChecks.ensureBufferObject(0x8895, false);
  2269.         }
  2270.         nglDrawElements(mode, indices.remaining(), GL11.GL_UNSIGNED_INT, memAddress(indices), __functionAddress);
  2271.     }
  2272.  
  2273.     // --- [ glDrawPixels ] ---
  2274.  
  2275.     /** JNI method for {@link #glDrawPixels(int, int, int, int, ByteBuffer)} */
  2276.     public static native void nglDrawPixels(int width, int height, int format, int type, long pixels, long __functionAddress);
  2277.  
  2278.     /**
  2279.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2280.      * <p/>
  2281.      * Draws a pixel rectangle to the active draw buffers.
  2282.      *
  2283.      * @param width  the pixel rectangle width
  2284.      * @param height the pixel rectangle height
  2285.      * @param format the pixel data format. One of:<p/>{@link GL11#GL_STENCIL_INDEX}, {@link GL11#GL_DEPTH_COMPONENT}, {@link GL30#GL_DEPTH_STENCIL}, {@link GL11#GL_RED}, {@link GL11#GL_GREEN}, {@link GL11#GL_BLUE}, {@link GL11#GL_ALPHA}, {@link GL11#GL_RG}, {@link GL11#GL_RGB}, {@link GL11#GL_RGBA}, {@link GL11#GL_BGR}, {@link GL11#GL_BGRA}, {@link GL11#GL_LUMINANCE}, {@link GL11#GL_LUMINANCE_ALPHA}, {@link GL30#GL_RED_INTEGER}, {@link GL30#GL_GREEN_INTEGER}, {@link GL30#GL_BLUE_INTEGER}, {@link GL30#GL_ALPHA_INTEGER}, {@link GL30#GL_RG_INTEGER}, {@link GL30#GL_RGB_INTEGER}, {@link GL30#GL_RGBA_INTEGER}, {@link GL30#GL_BGR_INTEGER}, {@link GL30#GL_BGRA_INTEGER}
  2286.      * @param type   the pixel data type. One of:<p/>{@link GL11#GL_UNSIGNED_BYTE}, {@link GL11#GL_BYTE}, {@link GL11#GL_UNSIGNED_SHORT}, {@link GL11#GL_SHORT}, {@link GL11#GL_UNSIGNED_INT}, {@link GL11#GL_INT}, {@link GL30#GL_HALF_FLOAT}, {@link GL11#GL_FLOAT}, {@link GL12#GL_UNSIGNED_BYTE_3_3_2}, {@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV}, {@link GL12#GL_UNSIGNED_SHORT_5_6_5}, {@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV}, {@link GL12#GL_UNSIGNED_SHORT_4_4_4_4}, {@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV}, {@link GL12#GL_UNSIGNED_SHORT_5_5_5_1}, {@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV}, {@link GL12#GL_UNSIGNED_INT_8_8_8_8}, {@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV}, {@link GL12#GL_UNSIGNED_INT_10_10_10_2}, {@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV}, {@link GL30#GL_UNSIGNED_INT_24_8}, {@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV}, {@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV}, {@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV}, {@link GL11#GL_BITMAP}
  2287.      * @param pixels the pixel data
  2288.      */
  2289.     public static void glDrawPixels(int width, int height, int format, int type, ByteBuffer pixels) {
  2290.         long __functionAddress = getInstance().glDrawPixels;
  2291.         if ( LWJGLUtil.CHECKS ) {
  2292.             checkFunctionAddress(__functionAddress);
  2293.             checkBuffer(pixels, width * height * GLChecks.getPixelBytes(format, type));
  2294.             GLChecks.ensureBufferObject(0x88EF, false);
  2295.         }
  2296.         nglDrawPixels(width, height, format, type, memAddress(pixels), __functionAddress);
  2297.     }
  2298.  
  2299.     /** Buffer object offset version of: {@link #glDrawPixels(int, int, int, int, ByteBuffer)} */
  2300.     public static void glDrawPixels(int width, int height, int format, int type, long pixelsOffset) {
  2301.         long __functionAddress = getInstance().glDrawPixels;
  2302.         if ( LWJGLUtil.CHECKS ) {
  2303.             checkFunctionAddress(__functionAddress);
  2304.             GLChecks.ensureBufferObject(0x88EF, true);
  2305.         }
  2306.         nglDrawPixels(width, height, format, type, pixelsOffset, __functionAddress);
  2307.     }
  2308.  
  2309.     /** ShortBuffer version of: {@link #glDrawPixels(int, int, int, int, ByteBuffer)} */
  2310.     public static void glDrawPixels(int width, int height, int format, int type, ShortBuffer pixels) {
  2311.         long __functionAddress = getInstance().glDrawPixels;
  2312.         if ( LWJGLUtil.CHECKS ) {
  2313.             checkFunctionAddress(__functionAddress);
  2314.             checkBuffer(pixels, (width * height * GLChecks.getPixelBytes(format, type)) >> 1);
  2315.             GLChecks.ensureBufferObject(0x88EF, false);
  2316.         }
  2317.         nglDrawPixels(width, height, format, type, memAddress(pixels), __functionAddress);
  2318.     }
  2319.  
  2320.     /** IntBuffer version of: {@link #glDrawPixels(int, int, int, int, ByteBuffer)} */
  2321.     public static void glDrawPixels(int width, int height, int format, int type, IntBuffer pixels) {
  2322.         long __functionAddress = getInstance().glDrawPixels;
  2323.         if ( LWJGLUtil.CHECKS ) {
  2324.             checkFunctionAddress(__functionAddress);
  2325.             checkBuffer(pixels, (width * height * GLChecks.getPixelBytes(format, type)) >> 2);
  2326.             GLChecks.ensureBufferObject(0x88EF, false);
  2327.         }
  2328.         nglDrawPixels(width, height, format, type, memAddress(pixels), __functionAddress);
  2329.     }
  2330.  
  2331.     /** FloatBuffer version of: {@link #glDrawPixels(int, int, int, int, ByteBuffer)} */
  2332.     public static void glDrawPixels(int width, int height, int format, int type, FloatBuffer pixels) {
  2333.         long __functionAddress = getInstance().glDrawPixels;
  2334.         if ( LWJGLUtil.CHECKS ) {
  2335.             checkFunctionAddress(__functionAddress);
  2336.             checkBuffer(pixels, (width * height * GLChecks.getPixelBytes(format, type)) >> 2);
  2337.             GLChecks.ensureBufferObject(0x88EF, false);
  2338.         }
  2339.         nglDrawPixels(width, height, format, type, memAddress(pixels), __functionAddress);
  2340.     }
  2341.  
  2342.     // --- [ glEdgeFlag ] ---
  2343.  
  2344.     /** JNI method for {@link #glEdgeFlag(boolean)} */
  2345.     public static native void nglEdgeFlag(boolean flag, long __functionAddress);
  2346.  
  2347.     /**
  2348.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2349.      * <p/>
  2350.      * Each edge of each polygon primitive generated is flagged as either boundary or non-boundary. These classifications are used during polygon
  2351.      * rasterization; some modes affect the interpretation of polygon boundary edges. By default, all edges are boundary edges, but the flagging of polygons,
  2352.      * separate triangles, or separate quadrilaterals may be altered by calling this function.
  2353.      * <p/>
  2354.      * When a primitive of type {@link #GL_POLYGON}, {@link #GL_TRIANGLES}, or {@link #GL_QUADS} is drawn, each vertex transferred begins an edge. If the edge
  2355.      * flag bit is TRUE, then each specified vertex begins an edge that is flagged as boundary. If the bit is FALSE, then induced edges are flagged as
  2356.      * non-boundary.
  2357.      *
  2358.      * @param flag the edge flag bit
  2359.      */
  2360.     public static void glEdgeFlag(boolean flag) {
  2361.         long __functionAddress = getInstance().glEdgeFlag;
  2362.         if ( LWJGLUtil.CHECKS )
  2363.             checkFunctionAddress(__functionAddress);
  2364.         nglEdgeFlag(flag, __functionAddress);
  2365.     }
  2366.  
  2367.     // --- [ glEdgeFlagv ] ---
  2368.  
  2369.     /** JNI method for {@link #glEdgeFlag(ByteBuffer)} */
  2370.     public static native void nglEdgeFlagv(long flag, long __functionAddress);
  2371.  
  2372.     /**
  2373.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2374.      * <p/>
  2375.      * Pointer version of {@link #glEdgeFlag(boolean)}.
  2376.      *
  2377.      * @param flag the edge flag buffer
  2378.      */
  2379.     public static void glEdgeFlag(ByteBuffer flag) {
  2380.         long __functionAddress = getInstance().glEdgeFlagv;
  2381.         if ( LWJGLUtil.CHECKS ) {
  2382.             checkFunctionAddress(__functionAddress);
  2383.             checkBuffer(flag, 1 << 0);
  2384.         }
  2385.         nglEdgeFlagv(memAddress(flag), __functionAddress);
  2386.     }
  2387.  
  2388.     // --- [ glEdgeFlagPointer ] ---
  2389.  
  2390.     /** JNI method for {@link #glEdgeFlagPointer(int, ByteBuffer)} */
  2391.     public static native void nglEdgeFlagPointer(int stride, long pointer, long __functionAddress);
  2392.  
  2393.     /**
  2394.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2395.      * <p/>
  2396.      * Specifies the location and organization of an edge flag array.
  2397.      *
  2398.      * @param stride  the vertex stride in bytes. If specified as zero, then array elements are stored sequentially
  2399.      * @param pointer the edge flag array data
  2400.      */
  2401.     public static void glEdgeFlagPointer(int stride, ByteBuffer pointer) {
  2402.         long __functionAddress = getInstance().glEdgeFlagPointer;
  2403.         if ( LWJGLUtil.CHECKS ) {
  2404.             checkFunctionAddress(__functionAddress);
  2405.             GLChecks.ensureBufferObject(0x8894, false);
  2406.         }
  2407.         nglEdgeFlagPointer(stride, memAddress(pointer), __functionAddress);
  2408.     }
  2409.  
  2410.     /** Buffer object offset version of: {@link #glEdgeFlagPointer(int, ByteBuffer)} */
  2411.     public static void glEdgeFlagPointer(int stride, long pointerOffset) {
  2412.         long __functionAddress = getInstance().glEdgeFlagPointer;
  2413.         if ( LWJGLUtil.CHECKS ) {
  2414.             checkFunctionAddress(__functionAddress);
  2415.             GLChecks.ensureBufferObject(0x8894, true);
  2416.         }
  2417.         nglEdgeFlagPointer(stride, pointerOffset, __functionAddress);
  2418.     }
  2419.  
  2420.     // --- [ glEnableClientState ] ---
  2421.  
  2422.     /** JNI method for {@link #glEnableClientState(int)} */
  2423.     public static native void nglEnableClientState(int array, long __functionAddress);
  2424.  
  2425.     /**
  2426.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2427.      * <p/>
  2428.      * Enables the specified fixed-function attribute array.
  2429.      *
  2430.      * @param array the attribute array to enable. One of:<p/>{@link #GL_VERTEX_ARRAY}, {@link #GL_NORMAL_ARRAY}, {@link #GL_COLOR_ARRAY}, {@link #GL_SECONDARY_COLOR_ARRAY}, {@link #GL_EDGE_FLAG_ARRAY}, {@link #GL_FOG_COORD_ARRAY}, {@link #GL_TEXTURE_COORD_ARRAY}
  2431.      */
  2432.     public static void glEnableClientState(int array) {
  2433.         long __functionAddress = getInstance().glEnableClientState;
  2434.         if ( LWJGLUtil.CHECKS )
  2435.             checkFunctionAddress(__functionAddress);
  2436.         nglEnableClientState(array, __functionAddress);
  2437.     }
  2438.  
  2439.     // --- [ glEnd ] ---
  2440.  
  2441.     /** JNI method for {@link #glEnd()} */
  2442.     public static native void nglEnd(long __functionAddress);
  2443.  
  2444.     /**
  2445.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2446.      * <p/>
  2447.      * Ends the definition of vertex attributes of a sequence of primitives to be transferred to the GL.
  2448.      */
  2449.     public static void glEnd() {
  2450.         long __functionAddress = getInstance().glEnd;
  2451.         if ( LWJGLUtil.CHECKS )
  2452.             checkFunctionAddress(__functionAddress);
  2453.         nglEnd(__functionAddress);
  2454.     }
  2455.  
  2456.     // --- [ glEvalCoord1f ] ---
  2457.  
  2458.     /** JNI method for {@link #glEvalCoord1f(float)} */
  2459.     public static native void nglEvalCoord1f(float u, long __functionAddress);
  2460.  
  2461.     /**
  2462.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2463.      * <p/>
  2464.      * Causes evaluation of the enabled one-dimensional evaluator maps.
  2465.      *
  2466.      * @param u the domain coordinate u
  2467.      */
  2468.     public static void glEvalCoord1f(float u) {
  2469.         long __functionAddress = getInstance().glEvalCoord1f;
  2470.         if ( LWJGLUtil.CHECKS )
  2471.             checkFunctionAddress(__functionAddress);
  2472.         nglEvalCoord1f(u, __functionAddress);
  2473.     }
  2474.  
  2475.     // --- [ glEvalCoord1fv ] ---
  2476.  
  2477.     /** JNI method for {@link #glEvalCoord1f(ByteBuffer)} */
  2478.     public static native void nglEvalCoord1fv(long u, long __functionAddress);
  2479.  
  2480.     /**
  2481.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2482.      * <p/>
  2483.      * Pointer version of {@link #glEvalCoord1f(float)}.
  2484.      *
  2485.      * @param u the domain coordinate buffer
  2486.      */
  2487.     public static void glEvalCoord1f(ByteBuffer u) {
  2488.         long __functionAddress = getInstance().glEvalCoord1fv;
  2489.         if ( LWJGLUtil.CHECKS )
  2490.             checkFunctionAddress(__functionAddress);
  2491.         nglEvalCoord1fv(memAddress(u), __functionAddress);
  2492.     }
  2493.  
  2494.     /** Alternative version of: {@link #glEvalCoord1f(ByteBuffer)} */
  2495.     public static void glEvalCoord1(FloatBuffer u) {
  2496.         long __functionAddress = getInstance().glEvalCoord1fv;
  2497.         if ( LWJGLUtil.CHECKS )
  2498.             checkFunctionAddress(__functionAddress);
  2499.         nglEvalCoord1fv(memAddress(u), __functionAddress);
  2500.     }
  2501.  
  2502.     // --- [ glEvalCoord1d ] ---
  2503.  
  2504.     /** JNI method for {@link #glEvalCoord1d(double)} */
  2505.     public static native void nglEvalCoord1d(double u, long __functionAddress);
  2506.  
  2507.     /**
  2508.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2509.      * <p/>
  2510.      * Double version of {@link #glEvalCoord1f(float)}.
  2511.      *
  2512.      * @param u the domain coordinate u
  2513.      */
  2514.     public static void glEvalCoord1d(double u) {
  2515.         long __functionAddress = getInstance().glEvalCoord1d;
  2516.         if ( LWJGLUtil.CHECKS )
  2517.             checkFunctionAddress(__functionAddress);
  2518.         nglEvalCoord1d(u, __functionAddress);
  2519.     }
  2520.  
  2521.     // --- [ glEvalCoord1dv ] ---
  2522.  
  2523.     /** JNI method for {@link #glEvalCoord1d(ByteBuffer)} */
  2524.     public static native void nglEvalCoord1dv(long u, long __functionAddress);
  2525.  
  2526.     /**
  2527.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2528.      * <p/>
  2529.      * Pointer version of {@link #glEvalCoord1d(double)}.
  2530.      *
  2531.      * @param u the domain coordinate buffer
  2532.      */
  2533.     public static void glEvalCoord1d(ByteBuffer u) {
  2534.         long __functionAddress = getInstance().glEvalCoord1dv;
  2535.         if ( LWJGLUtil.CHECKS )
  2536.             checkFunctionAddress(__functionAddress);
  2537.         nglEvalCoord1dv(memAddress(u), __functionAddress);
  2538.     }
  2539.  
  2540.     /** Alternative version of: {@link #glEvalCoord1d(ByteBuffer)} */
  2541.     public static void glEvalCoord1(DoubleBuffer u) {
  2542.         long __functionAddress = getInstance().glEvalCoord1dv;
  2543.         if ( LWJGLUtil.CHECKS )
  2544.             checkFunctionAddress(__functionAddress);
  2545.         nglEvalCoord1dv(memAddress(u), __functionAddress);
  2546.     }
  2547.  
  2548.     // --- [ glEvalCoord2f ] ---
  2549.  
  2550.     /** JNI method for {@link #glEvalCoord2f(float, float)} */
  2551.     public static native void nglEvalCoord2f(float u, float v, long __functionAddress);
  2552.  
  2553.     /**
  2554.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2555.      * <p/>
  2556.      * Causes evaluation of the enabled two-dimensional evaluator maps.
  2557.      *
  2558.      * @param u the domain coordinate u
  2559.      * @param v the domain coordinate v
  2560.      */
  2561.     public static void glEvalCoord2f(float u, float v) {
  2562.         long __functionAddress = getInstance().glEvalCoord2f;
  2563.         if ( LWJGLUtil.CHECKS )
  2564.             checkFunctionAddress(__functionAddress);
  2565.         nglEvalCoord2f(u, v, __functionAddress);
  2566.     }
  2567.  
  2568.     // --- [ glEvalCoord2fv ] ---
  2569.  
  2570.     /** JNI method for {@link #glEvalCoord2f(ByteBuffer)} */
  2571.     public static native void nglEvalCoord2fv(long u, long __functionAddress);
  2572.  
  2573.     /**
  2574.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2575.      * <p/>
  2576.      * Pointer version of {@link #glEvalCoord2f(float, float)}.
  2577.      *
  2578.      * @param u the domain coordinate buffer
  2579.      */
  2580.     public static void glEvalCoord2f(ByteBuffer u) {
  2581.         long __functionAddress = getInstance().glEvalCoord2fv;
  2582.         if ( LWJGLUtil.CHECKS )
  2583.             checkFunctionAddress(__functionAddress);
  2584.         nglEvalCoord2fv(memAddress(u), __functionAddress);
  2585.     }
  2586.  
  2587.     /** Alternative version of: {@link #glEvalCoord2f(ByteBuffer)} */
  2588.     public static void glEvalCoord2(FloatBuffer u) {
  2589.         long __functionAddress = getInstance().glEvalCoord2fv;
  2590.         if ( LWJGLUtil.CHECKS )
  2591.             checkFunctionAddress(__functionAddress);
  2592.         nglEvalCoord2fv(memAddress(u), __functionAddress);
  2593.     }
  2594.  
  2595.     // --- [ glEvalCoord2d ] ---
  2596.  
  2597.     /** JNI method for {@link #glEvalCoord2d(double, double)} */
  2598.     public static native void nglEvalCoord2d(double u, double v, long __functionAddress);
  2599.  
  2600.     /**
  2601.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2602.      * <p/>
  2603.      * Double version of {@link #glEvalCoord2f(float, float)}.
  2604.      *
  2605.      * @param u the domain coordinate u
  2606.      * @param v the domain coordinate v
  2607.      */
  2608.     public static void glEvalCoord2d(double u, double v) {
  2609.         long __functionAddress = getInstance().glEvalCoord2d;
  2610.         if ( LWJGLUtil.CHECKS )
  2611.             checkFunctionAddress(__functionAddress);
  2612.         nglEvalCoord2d(u, v, __functionAddress);
  2613.     }
  2614.  
  2615.     // --- [ glEvalCoord2dv ] ---
  2616.  
  2617.     /** JNI method for {@link #glEvalCoord2d(ByteBuffer)} */
  2618.     public static native void nglEvalCoord2dv(long u, long __functionAddress);
  2619.  
  2620.     /**
  2621.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2622.      * <p/>
  2623.      * Pointer version of {@link #glEvalCoord2d(double, double)}.
  2624.      *
  2625.      * @param u the domain coordinate buffer
  2626.      */
  2627.     public static void glEvalCoord2d(ByteBuffer u) {
  2628.         long __functionAddress = getInstance().glEvalCoord2dv;
  2629.         if ( LWJGLUtil.CHECKS )
  2630.             checkFunctionAddress(__functionAddress);
  2631.         nglEvalCoord2dv(memAddress(u), __functionAddress);
  2632.     }
  2633.  
  2634.     /** Alternative version of: {@link #glEvalCoord2d(ByteBuffer)} */
  2635.     public static void glEvalCoord2(DoubleBuffer u) {
  2636.         long __functionAddress = getInstance().glEvalCoord2dv;
  2637.         if ( LWJGLUtil.CHECKS )
  2638.             checkFunctionAddress(__functionAddress);
  2639.         nglEvalCoord2dv(memAddress(u), __functionAddress);
  2640.     }
  2641.  
  2642.     // --- [ glEvalMesh1 ] ---
  2643.  
  2644.     /** JNI method for {@link #glEvalMesh1(int, int, int)} */
  2645.     public static native void nglEvalMesh1(int mode, int i1, int i2, long __functionAddress);
  2646.  
  2647.     /**
  2648.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2649.      * <p/>
  2650.      * Carries out an evaluation on a subset of the one-dimensional map grid.
  2651.      *
  2652.      * @param mode the mesh type. One of:<p/>{@link #GL_POINT}, {@link #GL_LINE}
  2653.      * @param i1   the start index
  2654.      * @param i2   the end index
  2655.      */
  2656.     public static void glEvalMesh1(int mode, int i1, int i2) {
  2657.         long __functionAddress = getInstance().glEvalMesh1;
  2658.         if ( LWJGLUtil.CHECKS )
  2659.             checkFunctionAddress(__functionAddress);
  2660.         nglEvalMesh1(mode, i1, i2, __functionAddress);
  2661.     }
  2662.  
  2663.     // --- [ glEvalMesh2 ] ---
  2664.  
  2665.     /** JNI method for {@link #glEvalMesh2(int, int, int, int, int)} */
  2666.     public static native void nglEvalMesh2(int mode, int i1, int i2, int j1, int j2, long __functionAddress);
  2667.  
  2668.     /**
  2669.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2670.      * <p/>
  2671.      * Carries out an evaluation on a rectangular subset of the two-dimensional map grid.
  2672.      *
  2673.      * @param mode the mesh type. One of:<p/>{@link #GL_FILL}, {@link #GL_LINE}, {@link #GL_POINT}
  2674.      * @param i1   the u-dimension start index
  2675.      * @param i2   the u-dimension end index
  2676.      * @param j1   the v-dimension start index
  2677.      * @param j2   the v-dimension end index
  2678.      */
  2679.     public static void glEvalMesh2(int mode, int i1, int i2, int j1, int j2) {
  2680.         long __functionAddress = getInstance().glEvalMesh2;
  2681.         if ( LWJGLUtil.CHECKS )
  2682.             checkFunctionAddress(__functionAddress);
  2683.         nglEvalMesh2(mode, i1, i2, j1, j2, __functionAddress);
  2684.     }
  2685.  
  2686.     // --- [ glEvalPoint1 ] ---
  2687.  
  2688.     /** JNI method for {@link #glEvalPoint1(int)} */
  2689.     public static native void nglEvalPoint1(int i, long __functionAddress);
  2690.  
  2691.     /**
  2692.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2693.      * <p/>
  2694.      * Carries out an evalutation of a single point on the one-dimensional map grid.
  2695.      *
  2696.      * @param i the grid index
  2697.      */
  2698.     public static void glEvalPoint1(int i) {
  2699.         long __functionAddress = getInstance().glEvalPoint1;
  2700.         if ( LWJGLUtil.CHECKS )
  2701.             checkFunctionAddress(__functionAddress);
  2702.         nglEvalPoint1(i, __functionAddress);
  2703.     }
  2704.  
  2705.     // --- [ glEvalPoint2 ] ---
  2706.  
  2707.     /** JNI method for {@link #glEvalPoint2(int, int)} */
  2708.     public static native void nglEvalPoint2(int i, int j, long __functionAddress);
  2709.  
  2710.     /**
  2711.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2712.      * <p/>
  2713.      * Carries out an evalutation of a single point on the two-dimensional map grid.
  2714.      *
  2715.      * @param i the u-dimension grid index
  2716.      * @param j the v-dimension grid index
  2717.      */
  2718.     public static void glEvalPoint2(int i, int j) {
  2719.         long __functionAddress = getInstance().glEvalPoint2;
  2720.         if ( LWJGLUtil.CHECKS )
  2721.             checkFunctionAddress(__functionAddress);
  2722.         nglEvalPoint2(i, j, __functionAddress);
  2723.     }
  2724.  
  2725.     // --- [ glFeedbackBuffer ] ---
  2726.  
  2727.     /** JNI method for {@link #glFeedbackBuffer(int, int, ByteBuffer)} */
  2728.     public static native void nglFeedbackBuffer(int size, int type, long buffer, long __functionAddress);
  2729.  
  2730.     /**
  2731.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2732.      * <p/>
  2733.      * Returns information about primitives when the GL is in feedback mode.
  2734.      *
  2735.      * @param size   the maximum number of values that can be written to {@code buffer}
  2736.      * @param type   the type of information to feed back for each vertex. One of:<p/>{@link #GL_2D}, {@link #GL_3D}, {@link #GL_3D_COLOR}, {@link #GL_3D_COLOR_TEXTURE}, {@link #GL_4D_COLOR_TEXTURE}
  2737.      * @param buffer an array of floating-point values into which feedback information will be placed
  2738.      */
  2739.     public static void glFeedbackBuffer(int size, int type, ByteBuffer buffer) {
  2740.         long __functionAddress = getInstance().glFeedbackBuffer;
  2741.         if ( LWJGLUtil.CHECKS ) {
  2742.             checkFunctionAddress(__functionAddress);
  2743.             checkBuffer(buffer, size << 2);
  2744.         }
  2745.         nglFeedbackBuffer(size, type, memAddress(buffer), __functionAddress);
  2746.     }
  2747.  
  2748.     /** Alternative version of: {@link #glFeedbackBuffer(int, int, ByteBuffer)} */
  2749.     public static void glFeedbackBuffer(int type, FloatBuffer buffer) {
  2750.         long __functionAddress = getInstance().glFeedbackBuffer;
  2751.         if ( LWJGLUtil.CHECKS )
  2752.             checkFunctionAddress(__functionAddress);
  2753.         nglFeedbackBuffer(buffer.remaining(), type, memAddress(buffer), __functionAddress);
  2754.     }
  2755.  
  2756.     // --- [ glFinish ] ---
  2757.  
  2758.     /** JNI method for {@link #glFinish()} */
  2759.     public static native void nglFinish(long __functionAddress);
  2760.  
  2761.     /**
  2762.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glFinish.xml">OpenGL SDK Reference</a>
  2763.      * <p/>
  2764.      * Forces all previously issued GL commands to complete. {@code Finish} does not return until all effects from such commands on GL client and server
  2765.      * state and the framebuffer are fully realized.
  2766.      */
  2767.     public static void glFinish() {
  2768.         long __functionAddress = getInstance().glFinish;
  2769.         if ( LWJGLUtil.CHECKS )
  2770.             checkFunctionAddress(__functionAddress);
  2771.         nglFinish(__functionAddress);
  2772.     }
  2773.  
  2774.     // --- [ glFlush ] ---
  2775.  
  2776.     /** JNI method for {@link #glFlush()} */
  2777.     public static native void nglFlush(long __functionAddress);
  2778.  
  2779.     /**
  2780.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glFlush.xml">OpenGL SDK Reference</a>
  2781.      * <p/>
  2782.      * Causes all previously issued GL commands to complete in finite time (although such commands may still be executing when {@code Flush} returns).
  2783.      */
  2784.     public static void glFlush() {
  2785.         long __functionAddress = getInstance().glFlush;
  2786.         if ( LWJGLUtil.CHECKS )
  2787.             checkFunctionAddress(__functionAddress);
  2788.         nglFlush(__functionAddress);
  2789.     }
  2790.  
  2791.     // --- [ glFogi ] ---
  2792.  
  2793.     /** JNI method for {@link #glFogi(int, int)} */
  2794.     public static native void nglFogi(int pname, int param, long __functionAddress);
  2795.  
  2796.     /**
  2797.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2798.      * <p/>
  2799.      * Sets the integer value of a fog parameter.
  2800.      *
  2801.      * @param pname the fog parameter. One of:<p/>{@link #GL_FOG_MODE}, {@link #GL_FOG_COORD_SRC}
  2802.      * @param param the fog parameter value. One of:<p/>{@link #GL_EXP}, {@link #GL_EXP2}, {@link #GL_LINEAR}, {@link #GL_FRAGMENT_DEPTH}, {@link #GL_FOG_COORD}
  2803.      */
  2804.     public static void glFogi(int pname, int param) {
  2805.         long __functionAddress = getInstance().glFogi;
  2806.         if ( LWJGLUtil.CHECKS )
  2807.             checkFunctionAddress(__functionAddress);
  2808.         nglFogi(pname, param, __functionAddress);
  2809.     }
  2810.  
  2811.     // --- [ glFogiv ] ---
  2812.  
  2813.     /** JNI method for {@link #glFogi(int, ByteBuffer)} */
  2814.     public static native void nglFogiv(int pname, long params, long __functionAddress);
  2815.  
  2816.     /**
  2817.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2818.      * <p/>
  2819.      * Pointer version of {@link #glFogi(int, int)}.
  2820.      *
  2821.      * @param pname  the fog parameter. One of:<p/>{@link #GL_FOG_MODE}, {@link #GL_FOG_COORD_SRC}
  2822.      * @param params the fog parameter buffer
  2823.      */
  2824.     public static void glFogi(int pname, ByteBuffer params) {
  2825.         long __functionAddress = getInstance().glFogiv;
  2826.         if ( LWJGLUtil.CHECKS ) {
  2827.             checkFunctionAddress(__functionAddress);
  2828.             checkBuffer(params, 1 << 2);
  2829.         }
  2830.         nglFogiv(pname, memAddress(params), __functionAddress);
  2831.     }
  2832.  
  2833.     /** Alternative version of: {@link #glFogi(int, ByteBuffer)} */
  2834.     public static void glFog(int pname, IntBuffer params) {
  2835.         long __functionAddress = getInstance().glFogiv;
  2836.         if ( LWJGLUtil.CHECKS ) {
  2837.             checkFunctionAddress(__functionAddress);
  2838.             checkBuffer(params, 1);
  2839.         }
  2840.         nglFogiv(pname, memAddress(params), __functionAddress);
  2841.     }
  2842.  
  2843.     // --- [ glFogf ] ---
  2844.  
  2845.     /** JNI method for {@link #glFogf(int, float)} */
  2846.     public static native void nglFogf(int pname, float param, long __functionAddress);
  2847.  
  2848.     /**
  2849.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2850.      * <p/>
  2851.      * Sets the float value of a fog parameter.
  2852.      *
  2853.      * @param pname the fog parameter. One of:<p/>{@link #GL_FOG_DENSITY}, {@link #GL_FOG_START}, {@link #GL_FOG_END}
  2854.      * @param param the fog parameter value
  2855.      */
  2856.     public static void glFogf(int pname, float param) {
  2857.         long __functionAddress = getInstance().glFogf;
  2858.         if ( LWJGLUtil.CHECKS )
  2859.             checkFunctionAddress(__functionAddress);
  2860.         nglFogf(pname, param, __functionAddress);
  2861.     }
  2862.  
  2863.     // --- [ glFogfv ] ---
  2864.  
  2865.     /** JNI method for {@link #glFogf(int, ByteBuffer)} */
  2866.     public static native void nglFogfv(int pname, long params, long __functionAddress);
  2867.  
  2868.     /**
  2869.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2870.      * <p/>
  2871.      * Pointer version of {@link #glFogf(int, float)}.
  2872.      *
  2873.      * @param pname  the fog parameter. One of:<p/>{@link #GL_FOG_DENSITY}, {@link #GL_FOG_START}, {@link #GL_FOG_END}
  2874.      * @param params the fog parameter buffer
  2875.      */
  2876.     public static void glFogf(int pname, ByteBuffer params) {
  2877.         long __functionAddress = getInstance().glFogfv;
  2878.         if ( LWJGLUtil.CHECKS ) {
  2879.             checkFunctionAddress(__functionAddress);
  2880.             checkBuffer(params, 1 << 2);
  2881.         }
  2882.         nglFogfv(pname, memAddress(params), __functionAddress);
  2883.     }
  2884.  
  2885.     /** Alternative version of: {@link #glFogf(int, ByteBuffer)} */
  2886.     public static void glFog(int pname, FloatBuffer params) {
  2887.         long __functionAddress = getInstance().glFogfv;
  2888.         if ( LWJGLUtil.CHECKS ) {
  2889.             checkFunctionAddress(__functionAddress);
  2890.             checkBuffer(params, 1);
  2891.         }
  2892.         nglFogfv(pname, memAddress(params), __functionAddress);
  2893.     }
  2894.  
  2895.     // --- [ glFrontFace ] ---
  2896.  
  2897.     /** JNI method for {@link #glFrontFace(int)} */
  2898.     public static native void nglFrontFace(int dir, long __functionAddress);
  2899.  
  2900.     /**
  2901.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glFrontFace.xml">OpenGL SDK Reference</a>
  2902.      * <p/>
  2903.      * The first step of polygon rasterization is to determine if the polygon is back-facing or front-facing. This determination is made based on the sign of
  2904.      * the (clipped or unclipped) polygon's area computed in window coordinates. The interpretation of the sign of this value is controlled with this function.
  2905.      * In the initial state, the front face direction is set to {@link #GL_CCW}.
  2906.      *
  2907.      * @param dir the front face direction. One of:<p/>{@link #GL_CCW}, {@link #GL_CW}
  2908.      */
  2909.     public static void glFrontFace(int dir) {
  2910.         long __functionAddress = getInstance().glFrontFace;
  2911.         if ( LWJGLUtil.CHECKS )
  2912.             checkFunctionAddress(__functionAddress);
  2913.         nglFrontFace(dir, __functionAddress);
  2914.     }
  2915.  
  2916.     // --- [ glGenLists ] ---
  2917.  
  2918.     /** JNI method for {@link #glGenLists(int)} */
  2919.     public static native int nglGenLists(int s, long __functionAddress);
  2920.  
  2921.     /**
  2922.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  2923.      * <p/>
  2924.      * Returns an integer n such that the indices {@code n,..., n + s - 1} are previously unused (i.e. there are {@code s} previously unused display list
  2925.      * indices starting at n). {@code GenLists} also has the effect of creating an empty display list for each of the indices {@code n,..., n + s - 1}, so
  2926.      * that these indices all become used. {@code GenLists} returns zero if there is no group of {@code s} contiguous previously unused display list indices,
  2927.      * or if {@code s = 0}.
  2928.      *
  2929.      * @param s the number of display lists to create
  2930.      */
  2931.     public static int glGenLists(int s) {
  2932.         long __functionAddress = getInstance().glGenLists;
  2933.         if ( LWJGLUtil.CHECKS )
  2934.             checkFunctionAddress(__functionAddress);
  2935.         return nglGenLists(s, __functionAddress);
  2936.     }
  2937.  
  2938.     // --- [ glGenTextures ] ---
  2939.  
  2940.     /** JNI method for {@link #glGenTextures(int, ByteBuffer)} */
  2941.     public static native void nglGenTextures(int n, long textures, long __functionAddress);
  2942.  
  2943.     /**
  2944.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glGenTextures.xml">OpenGL SDK Reference</a>
  2945.      * <p/>
  2946.      * Returns n previously unused texture names in textures. These names are marked as used, for the purposes of GenTextures only, but they acquire texture
  2947.      * state and a dimensionality only when they are first bound, just as if they were unused.
  2948.      *
  2949.      * @param n        the number of textures to create
  2950.      * @param textures a scalar or array in which to place the returned texture names
  2951.      */
  2952.     public static void glGenTextures(int n, ByteBuffer textures) {
  2953.         long __functionAddress = getInstance().glGenTextures;
  2954.         if ( LWJGLUtil.CHECKS ) {
  2955.             checkFunctionAddress(__functionAddress);
  2956.             checkBuffer(textures, n << 2);
  2957.         }
  2958.         nglGenTextures(n, memAddress(textures), __functionAddress);
  2959.     }
  2960.  
  2961.     /** Alternative version of: {@link #glGenTextures(int, ByteBuffer)} */
  2962.     public static void glGenTextures(IntBuffer textures) {
  2963.         long __functionAddress = getInstance().glGenTextures;
  2964.         if ( LWJGLUtil.CHECKS )
  2965.             checkFunctionAddress(__functionAddress);
  2966.         nglGenTextures(textures.remaining(), memAddress(textures), __functionAddress);
  2967.     }
  2968.  
  2969.     /** Single return value version of: {@link #glGenTextures(int, ByteBuffer)} */
  2970.     public static int glGenTextures() {
  2971.         long __functionAddress = getInstance().glGenTextures;
  2972.         if ( LWJGLUtil.CHECKS )
  2973.             checkFunctionAddress(__functionAddress);
  2974.         APIBuffer __buffer = apiBuffer();
  2975.         int textures = __buffer.intParam();
  2976.         nglGenTextures(1, __buffer.address() + textures, __functionAddress);
  2977.         return __buffer.intValue(textures);
  2978.     }
  2979.  
  2980.     // --- [ glDeleteTextures ] ---
  2981.  
  2982.     /** JNI method for {@link #glDeleteTextures(int, ByteBuffer)} */
  2983.     public static native void nglDeleteTextures(int n, long textures, long __functionAddress);
  2984.  
  2985.     /**
  2986.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glDeleteTextures.xml">OpenGL SDK Reference</a>
  2987.      * <p/>
  2988.      * Deletes texture objects. After a texture object is deleted, it has no contents or dimensionality, and its name is again unused. If a texture that is
  2989.      * currently bound to any of the target bindings of {@link #glBindTexture(int, int)} is deleted, it is as though {@link #glBindTexture(int, int)} had been executed with the
  2990.      * same target and texture zero. Additionally, special care must be taken when deleting a texture if any of the images of the texture are attached to a
  2991.      * framebuffer object.
  2992.      * <p/>
  2993.      * Unused names in textures that have been marked as used for the purposes of {@link #glGenTextures(int, ByteBuffer)} are marked as unused again. Unused names in textures are
  2994.      * silently ignored, as is the name zero.
  2995.      *
  2996.      * @param n        the number of texture names in the {@code textures} parameter
  2997.      * @param textures contains {@code n} names of texture objects to be deleted
  2998.      */
  2999.     public static void glDeleteTextures(int n, ByteBuffer textures) {
  3000.         long __functionAddress = getInstance().glDeleteTextures;
  3001.         if ( LWJGLUtil.CHECKS ) {
  3002.             checkFunctionAddress(__functionAddress);
  3003.             checkBuffer(textures, n << 2);
  3004.         }
  3005.         nglDeleteTextures(n, memAddress(textures), __functionAddress);
  3006.     }
  3007.  
  3008.     /** Alternative version of: {@link #glDeleteTextures(int, ByteBuffer)} */
  3009.     public static void glDeleteTextures(IntBuffer textures) {
  3010.         long __functionAddress = getInstance().glDeleteTextures;
  3011.         if ( LWJGLUtil.CHECKS )
  3012.             checkFunctionAddress(__functionAddress);
  3013.         nglDeleteTextures(textures.remaining(), memAddress(textures), __functionAddress);
  3014.     }
  3015.  
  3016.     /** Single value version of: {@link #glDeleteTextures(int, ByteBuffer)} */
  3017.     public static void glDeleteTextures(int texture) {
  3018.         long __functionAddress = getInstance().glDeleteTextures;
  3019.         if ( LWJGLUtil.CHECKS )
  3020.             checkFunctionAddress(__functionAddress);
  3021.         APIBuffer __buffer = apiBuffer();
  3022.         int textures = __buffer.intParam();
  3023.         __buffer.intValue(textures, texture);
  3024.         nglDeleteTextures(1, __buffer.address() + textures, __functionAddress);
  3025.     }
  3026.  
  3027.     // --- [ glGetClipPlane ] ---
  3028.  
  3029.     /** JNI method for {@link #glGetClipPlane(int, ByteBuffer)} */
  3030.     public static native void nglGetClipPlane(int plane, long equation, long __functionAddress);
  3031.  
  3032.     /**
  3033.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glGetClipPlane.xml">OpenGL SDK Reference</a>
  3034.      * <p/>
  3035.      * Returns four double-precision values in {@code equation}; these are the coefficients of the plane equation of plane in eye coordinates (these
  3036.      * coordinates are those that were computed when the plane was specified).
  3037.      *
  3038.      * @param plane    the clip plane
  3039.      * @param equation an array in which to place the returned values
  3040.      */
  3041.     public static void glGetClipPlane(int plane, ByteBuffer equation) {
  3042.         long __functionAddress = getInstance().glGetClipPlane;
  3043.         if ( LWJGLUtil.CHECKS ) {
  3044.             checkFunctionAddress(__functionAddress);
  3045.             checkBuffer(equation, 4 << 3);
  3046.         }
  3047.         nglGetClipPlane(plane, memAddress(equation), __functionAddress);
  3048.     }
  3049.  
  3050.     /** Alternative version of: {@link #glGetClipPlane(int, ByteBuffer)} */
  3051.     public static void glGetClipPlane(int plane, DoubleBuffer equation) {
  3052.         long __functionAddress = getInstance().glGetClipPlane;
  3053.         if ( LWJGLUtil.CHECKS ) {
  3054.             checkFunctionAddress(__functionAddress);
  3055.             checkBuffer(equation, 4);
  3056.         }
  3057.         nglGetClipPlane(plane, memAddress(equation), __functionAddress);
  3058.     }
  3059.  
  3060.     // --- [ glGetBooleanv ] ---
  3061.  
  3062.     /** JNI method for {@link #glGetBoolean(int, ByteBuffer)} */
  3063.     public static native void nglGetBooleanv(int pname, long params, long __functionAddress);
  3064.  
  3065.     /**
  3066.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glGetBoolean.xml">OpenGL SDK Reference</a>
  3067.      * <p/>
  3068.      * Returns the current boolean value of the specified state variable.
  3069.      * <p/>
  3070.      * <b>LWJGL note</b>: The state that corresponds to the state variable may be a single value or an array of values. In the case of an array of values,
  3071.      * LWJGL will <b>not</b> validate if {@code params} has enough space to store that array. Doing so would introduce significant overhead, as the
  3072.      * OpenGL state variables are too many. It is the user's responsibility to avoid JVM crashes by ensuring enough space for the returned values.
  3073.      *
  3074.      * @param pname  the state variable
  3075.      * @param params a scalar or array in which to place the returned data
  3076.      */
  3077.     public static void glGetBoolean(int pname, ByteBuffer params) {
  3078.         long __functionAddress = getInstance().glGetBooleanv;
  3079.         if ( LWJGLUtil.CHECKS ) {
  3080.             checkFunctionAddress(__functionAddress);
  3081.             checkBuffer(params, 1 << 0);
  3082.         }
  3083.         nglGetBooleanv(pname, memAddress(params), __functionAddress);
  3084.     }
  3085.  
  3086.     /** Single return value version of: {@link #glGetBoolean(int, ByteBuffer)} */
  3087.     public static boolean glGetBoolean(int pname) {
  3088.         long __functionAddress = getInstance().glGetBooleanv;
  3089.         if ( LWJGLUtil.CHECKS )
  3090.             checkFunctionAddress(__functionAddress);
  3091.         APIBuffer __buffer = apiBuffer();
  3092.         int params = __buffer.booleanParam();
  3093.         nglGetBooleanv(pname, __buffer.address() + params, __functionAddress);
  3094.         return __buffer.booleanValue(params);
  3095.     }
  3096.  
  3097.     // --- [ glGetFloatv ] ---
  3098.  
  3099.     /** JNI method for {@link #glGetFloat(int, ByteBuffer)} */
  3100.     public static native void nglGetFloatv(int pname, long params, long __functionAddress);
  3101.  
  3102.     /**
  3103.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glGetFloat.xml">OpenGL SDK Reference</a>
  3104.      * <p/>
  3105.      * Returns the current float value of the specified state variable.
  3106.      * <p/>
  3107.      * <b>LWJGL note</b>: The state that corresponds to the state variable may be a single value or an array of values. In the case of an array of values,
  3108.      * LWJGL will <b>not</b> validate if {@code params} has enough space to store that array. Doing so would introduce significant overhead, as the
  3109.      * OpenGL state variables are too many. It is the user's responsibility to avoid JVM crashes by ensuring enough space for the returned values.
  3110.      *
  3111.      * @param pname  the state variable
  3112.      * @param params a scalar or array in which to place the returned data
  3113.      */
  3114.     public static void glGetFloat(int pname, ByteBuffer params) {
  3115.         long __functionAddress = getInstance().glGetFloatv;
  3116.         if ( LWJGLUtil.CHECKS ) {
  3117.             checkFunctionAddress(__functionAddress);
  3118.             checkBuffer(params, 1 << 2);
  3119.         }
  3120.         nglGetFloatv(pname, memAddress(params), __functionAddress);
  3121.     }
  3122.  
  3123.     /** Alternative version of: {@link #glGetFloat(int, ByteBuffer)} */
  3124.     public static void glGetFloat(int pname, FloatBuffer params) {
  3125.         long __functionAddress = getInstance().glGetFloatv;
  3126.         if ( LWJGLUtil.CHECKS ) {
  3127.             checkFunctionAddress(__functionAddress);
  3128.             checkBuffer(params, 1);
  3129.         }
  3130.         nglGetFloatv(pname, memAddress(params), __functionAddress);
  3131.     }
  3132.  
  3133.     /** Single return value version of: {@link #glGetFloat(int, ByteBuffer)} */
  3134.     public static float glGetFloat(int pname) {
  3135.         long __functionAddress = getInstance().glGetFloatv;
  3136.         if ( LWJGLUtil.CHECKS )
  3137.             checkFunctionAddress(__functionAddress);
  3138.         APIBuffer __buffer = apiBuffer();
  3139.         int params = __buffer.floatParam();
  3140.         nglGetFloatv(pname, __buffer.address() + params, __functionAddress);
  3141.         return __buffer.floatValue(params);
  3142.     }
  3143.  
  3144.     // --- [ glGetIntegerv ] ---
  3145.  
  3146.     /** JNI method for {@link #glGetInteger(int, ByteBuffer)} */
  3147.     public static native void nglGetIntegerv(int pname, long params, long __functionAddress);
  3148.  
  3149.     /**
  3150.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glGetInteger.xml">OpenGL SDK Reference</a>
  3151.      * <p/>
  3152.      * Returns the current integer value of the specified state variable.
  3153.      * <p/>
  3154.      * <b>LWJGL note</b>: The state that corresponds to the state variable may be a single value or an array of values. In the case of an array of values,
  3155.      * LWJGL will <b>not</b> validate if {@code params} has enough space to store that array. Doing so would introduce significant overhead, as the
  3156.      * OpenGL state variables are too many. It is the user's responsibility to avoid JVM crashes by ensuring enough space for the returned values.
  3157.      *
  3158.      * @param pname  the state variable
  3159.      * @param params a scalar or array in which to place the returned data
  3160.      */
  3161.     public static void glGetInteger(int pname, ByteBuffer params) {
  3162.         long __functionAddress = getInstance().glGetIntegerv;
  3163.         if ( LWJGLUtil.CHECKS ) {
  3164.             checkFunctionAddress(__functionAddress);
  3165.             checkBuffer(params, 1 << 2);
  3166.         }
  3167.         nglGetIntegerv(pname, memAddress(params), __functionAddress);
  3168.     }
  3169.  
  3170.     /** Alternative version of: {@link #glGetInteger(int, ByteBuffer)} */
  3171.     public static void glGetInteger(int pname, IntBuffer params) {
  3172.         long __functionAddress = getInstance().glGetIntegerv;
  3173.         if ( LWJGLUtil.CHECKS ) {
  3174.             checkFunctionAddress(__functionAddress);
  3175.             checkBuffer(params, 1);
  3176.         }
  3177.         nglGetIntegerv(pname, memAddress(params), __functionAddress);
  3178.     }
  3179.  
  3180.     /** Single return value version of: {@link #glGetInteger(int, ByteBuffer)} */
  3181.     public static int glGetInteger(int pname) {
  3182.         long __functionAddress = getInstance().glGetIntegerv;
  3183.         if ( LWJGLUtil.CHECKS )
  3184.             checkFunctionAddress(__functionAddress);
  3185.         APIBuffer __buffer = apiBuffer();
  3186.         int params = __buffer.intParam();
  3187.         nglGetIntegerv(pname, __buffer.address() + params, __functionAddress);
  3188.         return __buffer.intValue(params);
  3189.     }
  3190.  
  3191.     // --- [ glGetDoublev ] ---
  3192.  
  3193.     /** JNI method for {@link #glGetDouble(int, ByteBuffer)} */
  3194.     public static native void nglGetDoublev(int pname, long params, long __functionAddress);
  3195.  
  3196.     /**
  3197.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glGetDouble.xml">OpenGL SDK Reference</a>
  3198.      * <p/>
  3199.      * Returns the current double value of the specified state variable.
  3200.      * <p/>
  3201.      * <b>LWJGL note</b>: The state that corresponds to the state variable may be a single value or an array of values. In the case of an array of values,
  3202.      * LWJGL will <b>not</b> validate if {@code params} has enough space to store that array. Doing so would introduce significant overhead, as the
  3203.      * OpenGL state variables are too many. It is the user's responsibility to avoid JVM crashes by ensuring enough space for the returned values.
  3204.      *
  3205.      * @param pname  the state variable
  3206.      * @param params a scalar or array in which to place the returned data
  3207.      */
  3208.     public static void glGetDouble(int pname, ByteBuffer params) {
  3209.         long __functionAddress = getInstance().glGetDoublev;
  3210.         if ( LWJGLUtil.CHECKS ) {
  3211.             checkFunctionAddress(__functionAddress);
  3212.             checkBuffer(params, 1 << 3);
  3213.         }
  3214.         nglGetDoublev(pname, memAddress(params), __functionAddress);
  3215.     }
  3216.  
  3217.     /** Alternative version of: {@link #glGetDouble(int, ByteBuffer)} */
  3218.     public static void glGetDouble(int pname, DoubleBuffer params) {
  3219.         long __functionAddress = getInstance().glGetDoublev;
  3220.         if ( LWJGLUtil.CHECKS ) {
  3221.             checkFunctionAddress(__functionAddress);
  3222.             checkBuffer(params, 1);
  3223.         }
  3224.         nglGetDoublev(pname, memAddress(params), __functionAddress);
  3225.     }
  3226.  
  3227.     /** Single return value version of: {@link #glGetDouble(int, ByteBuffer)} */
  3228.     public static double glGetDouble(int pname) {
  3229.         long __functionAddress = getInstance().glGetDoublev;
  3230.         if ( LWJGLUtil.CHECKS )
  3231.             checkFunctionAddress(__functionAddress);
  3232.         APIBuffer __buffer = apiBuffer();
  3233.         int params = __buffer.doubleParam();
  3234.         nglGetDoublev(pname, __buffer.address() + params, __functionAddress);
  3235.         return __buffer.doubleValue(params);
  3236.     }
  3237.  
  3238.     // --- [ glGetError ] ---
  3239.  
  3240.     /** JNI method for {@link #glGetError()} */
  3241.     public static native int nglGetError(long __functionAddress);
  3242.  
  3243.     /**
  3244.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glGetError.xml">OpenGL SDK Reference</a>
  3245.      * <p/>
  3246.      * Returns error information. Each detectable error is assigned a numeric code. When an error is detected, a flag is set and the code is recorded. Further
  3247.      * errors, if they occur, do not affect this recorded code. When {@code GetError} is called, the code is returned and the flag is cleared, so that a
  3248.      * further error will again record its code. If a call to {@code GetError} returns {@link #GL_NO_ERROR}, then there has been no detectable error since
  3249.      * the last call to {@code GetError} (or since the GL was initialized).
  3250.      */
  3251.     public static int glGetError() {
  3252.         long __functionAddress = getInstance().glGetError;
  3253.         if ( LWJGLUtil.CHECKS )
  3254.             checkFunctionAddress(__functionAddress);
  3255.         return nglGetError(__functionAddress);
  3256.     }
  3257.  
  3258.     // --- [ glGetLightiv ] ---
  3259.  
  3260.     /** JNI method for {@link #glGetLighti(int, int, ByteBuffer)} */
  3261.     public static native void nglGetLightiv(int light, int value, long data, long __functionAddress);
  3262.  
  3263.     /**
  3264.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  3265.      * <p/>
  3266.      * Returns integer information about light parameter {@code value} for {@code light} in {@code data}.
  3267.      *
  3268.      * @param light the light for which to return information. One of:<p/>{@link #GL_LIGHT0}, GL_LIGHT[1-7]
  3269.      * @param value the light parameter to query. One of:<p/>{@link #GL_AMBIENT}, {@link #GL_DIFFUSE}, {@link #GL_SPECULAR}, {@link #GL_POSITION}, {@link #GL_CONSTANT_ATTENUATION}, {@link #GL_LINEAR_ATTENUATION}, {@link #GL_QUADRATIC_ATTENUATION}, {@link #GL_SPOT_DIRECTION}, {@link #GL_SPOT_EXPONENT}, {@link #GL_SPOT_CUTUFF}
  3270.      * @param data  a scalar or array in which to place the returned data
  3271.      */
  3272.     public static void glGetLighti(int light, int value, ByteBuffer data) {
  3273.         long __functionAddress = getInstance().glGetLightiv;
  3274.         if ( LWJGLUtil.CHECKS ) {
  3275.             checkFunctionAddress(__functionAddress);
  3276.             checkBuffer(data, 4 << 2);
  3277.         }
  3278.         nglGetLightiv(light, value, memAddress(data), __functionAddress);
  3279.     }
  3280.  
  3281.     /** Alternative version of: {@link #glGetLighti(int, int, ByteBuffer)} */
  3282.     public static void glGetLight(int light, int value, IntBuffer data) {
  3283.         long __functionAddress = getInstance().glGetLightiv;
  3284.         if ( LWJGLUtil.CHECKS ) {
  3285.             checkFunctionAddress(__functionAddress);
  3286.             checkBuffer(data, 4);
  3287.         }
  3288.         nglGetLightiv(light, value, memAddress(data), __functionAddress);
  3289.     }
  3290.  
  3291.     /** Single return value version of: {@link #glGetLighti(int, int, ByteBuffer)} */
  3292.     public static int glGetLighti(int light, int value) {
  3293.         long __functionAddress = getInstance().glGetLightiv;
  3294.         if ( LWJGLUtil.CHECKS )
  3295.             checkFunctionAddress(__functionAddress);
  3296.         APIBuffer __buffer = apiBuffer();
  3297.         int data = __buffer.intParam();
  3298.         nglGetLightiv(light, value, __buffer.address() + data, __functionAddress);
  3299.         return __buffer.intValue(data);
  3300.     }
  3301.  
  3302.     // --- [ glGetLightfv ] ---
  3303.  
  3304.     /** JNI method for {@link #glGetLightf(int, int, ByteBuffer)} */
  3305.     public static native void nglGetLightfv(int light, int value, long data, long __functionAddress);
  3306.  
  3307.     /**
  3308.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  3309.      * <p/>
  3310.      * Float version of {@link #glGetLighti(int, int, ByteBuffer)}.
  3311.      *
  3312.      * @param light the light for which to return information
  3313.      * @param value the light parameter to query
  3314.      * @param data  a scalar or array in which to place the returned data
  3315.      */
  3316.     public static void glGetLightf(int light, int value, ByteBuffer data) {
  3317.         long __functionAddress = getInstance().glGetLightfv;
  3318.         if ( LWJGLUtil.CHECKS ) {
  3319.             checkFunctionAddress(__functionAddress);
  3320.             checkBuffer(data, 4 << 2);
  3321.         }
  3322.         nglGetLightfv(light, value, memAddress(data), __functionAddress);
  3323.     }
  3324.  
  3325.     /** Alternative version of: {@link #glGetLightf(int, int, ByteBuffer)} */
  3326.     public static void glGetLight(int light, int value, FloatBuffer data) {
  3327.         long __functionAddress = getInstance().glGetLightfv;
  3328.         if ( LWJGLUtil.CHECKS ) {
  3329.             checkFunctionAddress(__functionAddress);
  3330.             checkBuffer(data, 4);
  3331.         }
  3332.         nglGetLightfv(light, value, memAddress(data), __functionAddress);
  3333.     }
  3334.  
  3335.     /** Single return value version of: {@link #glGetLightf(int, int, ByteBuffer)} */
  3336.     public static float glGetLightf(int light, int value) {
  3337.         long __functionAddress = getInstance().glGetLightfv;
  3338.         if ( LWJGLUtil.CHECKS )
  3339.             checkFunctionAddress(__functionAddress);
  3340.         APIBuffer __buffer = apiBuffer();
  3341.         int data = __buffer.floatParam();
  3342.         nglGetLightfv(light, value, __buffer.address() + data, __functionAddress);
  3343.         return __buffer.floatValue(data);
  3344.     }
  3345.  
  3346.     // --- [ glGetMapiv ] ---
  3347.  
  3348.     /** JNI method for {@link #glGetMapi(int, int, ByteBuffer)} */
  3349.     public static native void nglGetMapiv(int target, int query, long data, long __functionAddress);
  3350.  
  3351.     /**
  3352.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  3353.      * <p/>
  3354.      * Returns integer information about {@code query} for evaluator map {@code target} in {@code data}.
  3355.      *
  3356.      * @param target the evaluator target. One of:<p/>{@link #GL_MAP1_VERTEX_3}, {@link #GL_MAP1_VERTEX_4}, {@link #GL_MAP1_COLOR_4}, {@link #GL_MAP1_NORMAL}, {@link #GL_MAP1_TEXTURE_COORD_1}, {@link #GL_MAP1_TEXTURE_COORD_2}, {@link #GL_MAP1_TEXTURE_COORD_3}, {@link #GL_MAP1_TEXTURE_COORD_4}, {@link #GL_MAP2_VERTEX_3}, {@link #GL_MAP2_VERTEX_4}, {@link #GL_MAP2_COLOR_4}, {@link #GL_MAP2_NORMAL}, {@link #GL_MAP2_TEXTURE_COORD_1}, {@link #GL_MAP2_TEXTURE_COORD_2}, {@link #GL_MAP2_TEXTURE_COORD_3}, {@link #GL_MAP2_TEXTURE_COORD_4}
  3357.      * @param query  the information to query. One of:<p/>{@link #GL_ORDER}, {@link #GL_COEFF}, {@link #GL_DOMAIN}
  3358.      * @param data   a scalar or array in which to place the returned data
  3359.      */
  3360.     public static void glGetMapi(int target, int query, ByteBuffer data) {
  3361.         long __functionAddress = getInstance().glGetMapiv;
  3362.         if ( LWJGLUtil.CHECKS ) {
  3363.             checkFunctionAddress(__functionAddress);
  3364.             checkBuffer(data, 4 << 2);
  3365.         }
  3366.         nglGetMapiv(target, query, memAddress(data), __functionAddress);
  3367.     }
  3368.  
  3369.     /** Alternative version of: {@link #glGetMapi(int, int, ByteBuffer)} */
  3370.     public static void glGetMap(int target, int query, IntBuffer data) {
  3371.         long __functionAddress = getInstance().glGetMapiv;
  3372.         if ( LWJGLUtil.CHECKS ) {
  3373.             checkFunctionAddress(__functionAddress);
  3374.             checkBuffer(data, 4);
  3375.         }
  3376.         nglGetMapiv(target, query, memAddress(data), __functionAddress);
  3377.     }
  3378.  
  3379.     /** Single return value version of: {@link #glGetMapi(int, int, ByteBuffer)} */
  3380.     public static int glGetMapi(int target, int query) {
  3381.         long __functionAddress = getInstance().glGetMapiv;
  3382.         if ( LWJGLUtil.CHECKS )
  3383.             checkFunctionAddress(__functionAddress);
  3384.         APIBuffer __buffer = apiBuffer();
  3385.         int data = __buffer.intParam();
  3386.         nglGetMapiv(target, query, __buffer.address() + data, __functionAddress);
  3387.         return __buffer.intValue(data);
  3388.     }
  3389.  
  3390.     // --- [ glGetMapfv ] ---
  3391.  
  3392.     /** JNI method for {@link #glGetMapf(int, int, ByteBuffer)} */
  3393.     public static native void nglGetMapfv(int target, int query, long data, long __functionAddress);
  3394.  
  3395.     /**
  3396.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  3397.      * <p/>
  3398.      * Float version of {@link #glGetMapi(int, int, ByteBuffer)}.
  3399.      *
  3400.      * @param target the evaluator map
  3401.      * @param query  the information to query
  3402.      * @param data   a scalar or array in which to place the returned data
  3403.      */
  3404.     public static void glGetMapf(int target, int query, ByteBuffer data) {
  3405.         long __functionAddress = getInstance().glGetMapfv;
  3406.         if ( LWJGLUtil.CHECKS ) {
  3407.             checkFunctionAddress(__functionAddress);
  3408.             checkBuffer(data, 4 << 2);
  3409.         }
  3410.         nglGetMapfv(target, query, memAddress(data), __functionAddress);
  3411.     }
  3412.  
  3413.     /** Alternative version of: {@link #glGetMapf(int, int, ByteBuffer)} */
  3414.     public static void glGetMap(int target, int query, FloatBuffer data) {
  3415.         long __functionAddress = getInstance().glGetMapfv;
  3416.         if ( LWJGLUtil.CHECKS ) {
  3417.             checkFunctionAddress(__functionAddress);
  3418.             checkBuffer(data, 4);
  3419.         }
  3420.         nglGetMapfv(target, query, memAddress(data), __functionAddress);
  3421.     }
  3422.  
  3423.     /** Single return value version of: {@link #glGetMapf(int, int, ByteBuffer)} */
  3424.     public static float glGetMapf(int target, int query) {
  3425.         long __functionAddress = getInstance().glGetMapfv;
  3426.         if ( LWJGLUtil.CHECKS )
  3427.             checkFunctionAddress(__functionAddress);
  3428.         APIBuffer __buffer = apiBuffer();
  3429.         int data = __buffer.floatParam();
  3430.         nglGetMapfv(target, query, __buffer.address() + data, __functionAddress);
  3431.         return __buffer.floatValue(data);
  3432.     }
  3433.  
  3434.     // --- [ glGetMapdv ] ---
  3435.  
  3436.     /** JNI method for {@link #glGetMapd(int, int, ByteBuffer)} */
  3437.     public static native void nglGetMapdv(int target, int query, long data, long __functionAddress);
  3438.  
  3439.     /**
  3440.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  3441.      * <p/>
  3442.      * Double version of {@link #glGetMapi(int, int, ByteBuffer)}.
  3443.      *
  3444.      * @param target the evaluator map
  3445.      * @param query  the information to query
  3446.      * @param data   a scalar or array in which to place the returned data
  3447.      */
  3448.     public static void glGetMapd(int target, int query, ByteBuffer data) {
  3449.         long __functionAddress = getInstance().glGetMapdv;
  3450.         if ( LWJGLUtil.CHECKS ) {
  3451.             checkFunctionAddress(__functionAddress);
  3452.             checkBuffer(data, 4 << 3);
  3453.         }
  3454.         nglGetMapdv(target, query, memAddress(data), __functionAddress);
  3455.     }
  3456.  
  3457.     /** Alternative version of: {@link #glGetMapd(int, int, ByteBuffer)} */
  3458.     public static void glGetMap(int target, int query, DoubleBuffer data) {
  3459.         long __functionAddress = getInstance().glGetMapdv;
  3460.         if ( LWJGLUtil.CHECKS ) {
  3461.             checkFunctionAddress(__functionAddress);
  3462.             checkBuffer(data, 4);
  3463.         }
  3464.         nglGetMapdv(target, query, memAddress(data), __functionAddress);
  3465.     }
  3466.  
  3467.     /** Single return value version of: {@link #glGetMapd(int, int, ByteBuffer)} */
  3468.     public static double glGetMapd(int target, int query) {
  3469.         long __functionAddress = getInstance().glGetMapdv;
  3470.         if ( LWJGLUtil.CHECKS )
  3471.             checkFunctionAddress(__functionAddress);
  3472.         APIBuffer __buffer = apiBuffer();
  3473.         int data = __buffer.doubleParam();
  3474.         nglGetMapdv(target, query, __buffer.address() + data, __functionAddress);
  3475.         return __buffer.doubleValue(data);
  3476.     }
  3477.  
  3478.     // --- [ glGetMaterialiv ] ---
  3479.  
  3480.     /** JNI method for {@link #glGetMateriali(int, int, ByteBuffer)} */
  3481.     public static native void nglGetMaterialiv(int face, int value, long data, long __functionAddress);
  3482.  
  3483.     /**
  3484.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  3485.      * <p/>
  3486.      * Returns integer information about material property {@code value} for {@code face} in {@code data}.
  3487.      *
  3488.      * @param face  the material face for which to return information. One of:<p/>{@link #GL_FRONT}, {@link #GL_BACK}
  3489.      * @param value the information to query. One of:<p/>{@link #GL_AMBIENT}, {@link #GL_DIFFUSE}, {@link #GL_SPECULAR}, {@link #GL_EMISSION}, {@link #GL_SHININESS}
  3490.      * @param data  a scalar or array in which to place the returned data
  3491.      */
  3492.     public static void glGetMateriali(int face, int value, ByteBuffer data) {
  3493.         long __functionAddress = getInstance().glGetMaterialiv;
  3494.         if ( LWJGLUtil.CHECKS )
  3495.             checkFunctionAddress(__functionAddress);
  3496.         nglGetMaterialiv(face, value, memAddress(data), __functionAddress);
  3497.     }
  3498.  
  3499.     /** Alternative version of: {@link #glGetMateriali(int, int, ByteBuffer)} */
  3500.     public static void glGetMaterial(int face, int value, IntBuffer data) {
  3501.         long __functionAddress = getInstance().glGetMaterialiv;
  3502.         if ( LWJGLUtil.CHECKS )
  3503.             checkFunctionAddress(__functionAddress);
  3504.         nglGetMaterialiv(face, value, memAddress(data), __functionAddress);
  3505.     }
  3506.  
  3507.     // --- [ glGetMaterialfv ] ---
  3508.  
  3509.     /** JNI method for {@link #glGetMaterialf(int, int, ByteBuffer)} */
  3510.     public static native void nglGetMaterialfv(int face, int value, long data, long __functionAddress);
  3511.  
  3512.     /**
  3513.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  3514.      * <p/>
  3515.      * Float version of {@link #glGetMateriali(int, int, ByteBuffer)}.
  3516.      *
  3517.      * @param face  the material face for which to return information
  3518.      * @param value the information to query
  3519.      * @param data  a scalar or array in which to place the returned data
  3520.      */
  3521.     public static void glGetMaterialf(int face, int value, ByteBuffer data) {
  3522.         long __functionAddress = getInstance().glGetMaterialfv;
  3523.         if ( LWJGLUtil.CHECKS )
  3524.             checkFunctionAddress(__functionAddress);
  3525.         nglGetMaterialfv(face, value, memAddress(data), __functionAddress);
  3526.     }
  3527.  
  3528.     /** Alternative version of: {@link #glGetMaterialf(int, int, ByteBuffer)} */
  3529.     public static void glGetMaterial(int face, int value, FloatBuffer data) {
  3530.         long __functionAddress = getInstance().glGetMaterialfv;
  3531.         if ( LWJGLUtil.CHECKS )
  3532.             checkFunctionAddress(__functionAddress);
  3533.         nglGetMaterialfv(face, value, memAddress(data), __functionAddress);
  3534.     }
  3535.  
  3536.     // --- [ glGetPixelMapfv ] ---
  3537.  
  3538.     /** JNI method for {@link #glGetPixelMapf(int, ByteBuffer)} */
  3539.     public static native void nglGetPixelMapfv(int map, long data, long __functionAddress);
  3540.  
  3541.     /**
  3542.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  3543.      * <p/>
  3544.      * Returns all float values in the pixel map {@code map} in {@code data}.
  3545.      *
  3546.      * @param map  the pixel map parameter to query. One of:<p/>{@link #GL_PIXEL_MAP_I_TO_I}, {@link #GL_PIXEL_MAP_S_TO_S}, {@link #GL_PIXEL_MAP_I_TO_R}, {@link #GL_PIXEL_MAP_I_TO_G}, {@link #GL_PIXEL_MAP_I_TO_B}, {@link #GL_PIXEL_MAP_I_TO_A}, {@link #GL_PIXEL_MAP_R_TO_R}, {@link #GL_PIXEL_MAP_G_TO_G}, {@link #GL_PIXEL_MAP_B_TO_B}, {@link #GL_PIXEL_MAP_A_TO_A}
  3547.      * @param data an array in which to place the returned data
  3548.      */
  3549.     public static void glGetPixelMapf(int map, ByteBuffer data) {
  3550.         long __functionAddress = getInstance().glGetPixelMapfv;
  3551.         if ( LWJGLUtil.CHECKS ) {
  3552.             checkFunctionAddress(__functionAddress);
  3553.             checkBuffer(data, 32 << 2);
  3554.             GLChecks.ensureBufferObject(0x88ED, false);
  3555.         }
  3556.         nglGetPixelMapfv(map, memAddress(data), __functionAddress);
  3557.     }
  3558.  
  3559.     /** Buffer object offset version of: {@link #glGetPixelMapf(int, ByteBuffer)} */
  3560.     public static void glGetPixelMapf(int map, long dataOffset) {
  3561.         long __functionAddress = getInstance().glGetPixelMapfv;
  3562.         if ( LWJGLUtil.CHECKS ) {
  3563.             checkFunctionAddress(__functionAddress);
  3564.             GLChecks.ensureBufferObject(0x88ED, true);
  3565.         }
  3566.         nglGetPixelMapfv(map, dataOffset, __functionAddress);
  3567.     }
  3568.  
  3569.     /** Alternative version of: {@link #glGetPixelMapf(int, ByteBuffer)} */
  3570.     public static void glGetPixelMap(int map, FloatBuffer data) {
  3571.         long __functionAddress = getInstance().glGetPixelMapfv;
  3572.         if ( LWJGLUtil.CHECKS ) {
  3573.             checkFunctionAddress(__functionAddress);
  3574.             checkBuffer(data, 32);
  3575.             GLChecks.ensureBufferObject(0x88ED, true);
  3576.         }
  3577.         nglGetPixelMapfv(map, memAddress(data), __functionAddress);
  3578.     }
  3579.  
  3580.     // --- [ glGetPixelMapusv ] ---
  3581.  
  3582.     /** JNI method for {@link #glGetPixelMapus(int, ByteBuffer)} */
  3583.     public static native void nglGetPixelMapusv(int map, long data, long __functionAddress);
  3584.  
  3585.     /**
  3586.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  3587.      * <p/>
  3588.      * Unsigned short version of {@link #glGetPixelMapf(int, ByteBuffer)}.
  3589.      *
  3590.      * @param map  the pixel map parameter to query
  3591.      * @param data an array in which to place the returned data
  3592.      */
  3593.     public static void glGetPixelMapus(int map, ByteBuffer data) {
  3594.         long __functionAddress = getInstance().glGetPixelMapusv;
  3595.         if ( LWJGLUtil.CHECKS ) {
  3596.             checkFunctionAddress(__functionAddress);
  3597.             checkBuffer(data, 32 << 1);
  3598.             GLChecks.ensureBufferObject(0x88ED, false);
  3599.         }
  3600.         nglGetPixelMapusv(map, memAddress(data), __functionAddress);
  3601.     }
  3602.  
  3603.     /** Buffer object offset version of: {@link #glGetPixelMapus(int, ByteBuffer)} */
  3604.     public static void glGetPixelMapus(int map, long dataOffset) {
  3605.         long __functionAddress = getInstance().glGetPixelMapusv;
  3606.         if ( LWJGLUtil.CHECKS ) {
  3607.             checkFunctionAddress(__functionAddress);
  3608.             GLChecks.ensureBufferObject(0x88ED, true);
  3609.         }
  3610.         nglGetPixelMapusv(map, dataOffset, __functionAddress);
  3611.     }
  3612.  
  3613.     /** Alternative version of: {@link #glGetPixelMapus(int, ByteBuffer)} */
  3614.     public static void glGetPixelMapu(int map, ShortBuffer data) {
  3615.         long __functionAddress = getInstance().glGetPixelMapusv;
  3616.         if ( LWJGLUtil.CHECKS ) {
  3617.             checkFunctionAddress(__functionAddress);
  3618.             checkBuffer(data, 32);
  3619.             GLChecks.ensureBufferObject(0x88ED, true);
  3620.         }
  3621.         nglGetPixelMapusv(map, memAddress(data), __functionAddress);
  3622.     }
  3623.  
  3624.     // --- [ glGetPixelMapuiv ] ---
  3625.  
  3626.     /** JNI method for {@link #glGetPixelMapui(int, ByteBuffer)} */
  3627.     public static native void nglGetPixelMapuiv(int map, long data, long __functionAddress);
  3628.  
  3629.     /**
  3630.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  3631.      * <p/>
  3632.      * Unsigned integer version of {@link #glGetPixelMapf(int, ByteBuffer)}.
  3633.      *
  3634.      * @param map  the pixel map parameter to query
  3635.      * @param data an array in which to place the returned data
  3636.      */
  3637.     public static void glGetPixelMapui(int map, ByteBuffer data) {
  3638.         long __functionAddress = getInstance().glGetPixelMapuiv;
  3639.         if ( LWJGLUtil.CHECKS ) {
  3640.             checkFunctionAddress(__functionAddress);
  3641.             checkBuffer(data, 32 << 2);
  3642.             GLChecks.ensureBufferObject(0x88ED, false);
  3643.         }
  3644.         nglGetPixelMapuiv(map, memAddress(data), __functionAddress);
  3645.     }
  3646.  
  3647.     /** Buffer object offset version of: {@link #glGetPixelMapui(int, ByteBuffer)} */
  3648.     public static void glGetPixelMapui(int map, long dataOffset) {
  3649.         long __functionAddress = getInstance().glGetPixelMapuiv;
  3650.         if ( LWJGLUtil.CHECKS ) {
  3651.             checkFunctionAddress(__functionAddress);
  3652.             GLChecks.ensureBufferObject(0x88ED, true);
  3653.         }
  3654.         nglGetPixelMapuiv(map, dataOffset, __functionAddress);
  3655.     }
  3656.  
  3657.     /** Alternative version of: {@link #glGetPixelMapui(int, ByteBuffer)} */
  3658.     public static void glGetPixelMapu(int map, IntBuffer data) {
  3659.         long __functionAddress = getInstance().glGetPixelMapuiv;
  3660.         if ( LWJGLUtil.CHECKS ) {
  3661.             checkFunctionAddress(__functionAddress);
  3662.             checkBuffer(data, 32);
  3663.             GLChecks.ensureBufferObject(0x88ED, true);
  3664.         }
  3665.         nglGetPixelMapuiv(map, memAddress(data), __functionAddress);
  3666.     }
  3667.  
  3668.     // --- [ glGetPointerv ] ---
  3669.  
  3670.     /** JNI method for {@link #glGetPointer(int, ByteBuffer)} */
  3671.     public static native void nglGetPointerv(int pname, long params, long __functionAddress);
  3672.  
  3673.     /**
  3674.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glGetPointer.xml">OpenGL SDK Reference</a>
  3675.      * <p/>
  3676.      * Returns a pointer in the current GL context.
  3677.      *
  3678.      * @param pname  the pointer to return
  3679.      * @param params an array in which to place the returned pointer
  3680.      */
  3681.     public static void glGetPointer(int pname, ByteBuffer params) {
  3682.         long __functionAddress = getInstance().glGetPointerv;
  3683.         if ( LWJGLUtil.CHECKS ) {
  3684.             checkFunctionAddress(__functionAddress);
  3685.             checkBuffer(params, 1 << PointerBuffer.getPointerSizeShift());
  3686.         }
  3687.         nglGetPointerv(pname, memAddress(params), __functionAddress);
  3688.     }
  3689.  
  3690.     /** Alternative version of: {@link #glGetPointer(int, ByteBuffer)} */
  3691.     public static void glGetPointer(int pname, PointerBuffer params) {
  3692.         long __functionAddress = getInstance().glGetPointerv;
  3693.         if ( LWJGLUtil.CHECKS ) {
  3694.             checkFunctionAddress(__functionAddress);
  3695.             checkBuffer(params, 1);
  3696.         }
  3697.         nglGetPointerv(pname, memAddress(params), __functionAddress);
  3698.     }
  3699.  
  3700.     /** Single return value version of: {@link #glGetPointer(int, ByteBuffer)} */
  3701.     public static long glGetPointer(int pname) {
  3702.         long __functionAddress = getInstance().glGetPointerv;
  3703.         if ( LWJGLUtil.CHECKS )
  3704.             checkFunctionAddress(__functionAddress);
  3705.         APIBuffer __buffer = apiBuffer();
  3706.         int params = __buffer.pointerParam();
  3707.         nglGetPointerv(pname, __buffer.address() + params, __functionAddress);
  3708.         return __buffer.pointerValue(params);
  3709.     }
  3710.  
  3711.     // --- [ glGetPolygonStipple ] ---
  3712.  
  3713.     /** JNI method for {@link #glGetPolygonStipple(ByteBuffer)} */
  3714.     public static native void nglGetPolygonStipple(long pattern, long __functionAddress);
  3715.  
  3716.     /**
  3717.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  3718.      * <p/>
  3719.      * Obtains the polygon stipple.
  3720.      *
  3721.      * @param pattern an array in which to place the returned data
  3722.      */
  3723.     public static void glGetPolygonStipple(ByteBuffer pattern) {
  3724.         long __functionAddress = getInstance().glGetPolygonStipple;
  3725.         if ( LWJGLUtil.CHECKS ) {
  3726.             checkFunctionAddress(__functionAddress);
  3727.             checkBuffer(pattern, 128);
  3728.             GLChecks.ensureBufferObject(0x88ED, false);
  3729.         }
  3730.         nglGetPolygonStipple(memAddress(pattern), __functionAddress);
  3731.     }
  3732.  
  3733.     /** Buffer object offset version of: {@link #glGetPolygonStipple(ByteBuffer)} */
  3734.     public static void glGetPolygonStipple(long patternOffset) {
  3735.         long __functionAddress = getInstance().glGetPolygonStipple;
  3736.         if ( LWJGLUtil.CHECKS ) {
  3737.             checkFunctionAddress(__functionAddress);
  3738.             GLChecks.ensureBufferObject(0x88ED, true);
  3739.         }
  3740.         nglGetPolygonStipple(patternOffset, __functionAddress);
  3741.     }
  3742.  
  3743.     // --- [ glGetString ] ---
  3744.  
  3745.     /** JNI method for {@link #glGetString(int)} */
  3746.     public static native long nglGetString(int name, long __functionAddress);
  3747.  
  3748.     /**
  3749.      * Return strings describing properties of the current GL context.
  3750.      *
  3751.      * @param name the property to query. One of:<p/>{@link #GL_RENDERER}, {@link #GL_VENDOR}, {@link #GL_EXTENSIONS}, {@link #GL_VERSION}, {@link GL20#GL_SHADING_LANGUAGE_VERSION}
  3752.      */
  3753.     public static String glGetString(int name) {
  3754.         long __functionAddress = getInstance().glGetString;
  3755.         if ( LWJGLUtil.CHECKS )
  3756.             checkFunctionAddress(__functionAddress);
  3757.         long __result = nglGetString(name, __functionAddress);
  3758.         return memDecodeUTF8(memByteBufferNT1(__result));
  3759.     }
  3760.  
  3761.     // --- [ glGetTexEnviv ] ---
  3762.  
  3763.     /** JNI method for {@link #glGetTexEnvi(int, int, ByteBuffer)} */
  3764.     public static native void nglGetTexEnviv(int env, int value, long data, long __functionAddress);
  3765.  
  3766.     /**
  3767.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glGetTexEnv.xml">OpenGL SDK Reference</a>
  3768.      * <p/>
  3769.      * Returns integer information about {@code value} for {@code env} in {@code data}.
  3770.      *
  3771.      * @param env   the texture environment to query. One of:<p/>{@link #GL_POINT_SPRITE}, {@link #GL_TEXTURE_ENV}, {@link #GL_TEXTURE_FILTER_CONTROL}
  3772.      * @param value the value to query. One of:<p/>{@link #GL_COORD_REPLACE}, {@link #GL_TEXTURE_ENV_MODE}, {@link #GL_TEXTURE_ENV_COLOR}, {@link #GL_TEXTURE_LOD_BIAS}, {@link #GL_COMBINE_RGB}, {@link #GL_COMBINE_ALPHA}, {@link #GL_SRC0_RGB}, {@link #GL_SRC1_RGB}, {@link #GL_SRC2_RGB}, {@link #GL_SRC0_ALPHA}, {@link #GL_SRC1_ALPHA}, {@link #GL_SRC2_ALPHA}, {@link #GL_OPERAND0_RGB}, {@link #GL_OPERAND1_RGB}, {@link #GL_OPERAND2_RGB}, {@link #GL_OPERAND0_ALPHA}, {@link #GL_OPERAND1_ALPHA}, {@link #GL_OPERAND2_ALPHA}, {@link #GL_RGB_SCALE}, {@link #GL_ALPHA_SCALE}
  3773.      * @param data  a scalar or array in which to place the returned data
  3774.      */
  3775.     public static void glGetTexEnvi(int env, int value, ByteBuffer data) {
  3776.         long __functionAddress = getInstance().glGetTexEnviv;
  3777.         if ( LWJGLUtil.CHECKS ) {
  3778.             checkFunctionAddress(__functionAddress);
  3779.             checkBuffer(data, 1 << 2);
  3780.         }
  3781.         nglGetTexEnviv(env, value, memAddress(data), __functionAddress);
  3782.     }
  3783.  
  3784.     /** Alternative version of: {@link #glGetTexEnvi(int, int, ByteBuffer)} */
  3785.     public static void glGetTexEnv(int env, int value, IntBuffer data) {
  3786.         long __functionAddress = getInstance().glGetTexEnviv;
  3787.         if ( LWJGLUtil.CHECKS ) {
  3788.             checkFunctionAddress(__functionAddress);
  3789.             checkBuffer(data, 1);
  3790.         }
  3791.         nglGetTexEnviv(env, value, memAddress(data), __functionAddress);
  3792.     }
  3793.  
  3794.     /** Single return value version of: {@link #glGetTexEnvi(int, int, ByteBuffer)} */
  3795.     public static int glGetTexEnvi(int env, int value) {
  3796.         long __functionAddress = getInstance().glGetTexEnviv;
  3797.         if ( LWJGLUtil.CHECKS )
  3798.             checkFunctionAddress(__functionAddress);
  3799.         APIBuffer __buffer = apiBuffer();
  3800.         int data = __buffer.intParam();
  3801.         nglGetTexEnviv(env, value, __buffer.address() + data, __functionAddress);
  3802.         return __buffer.intValue(data);
  3803.     }
  3804.  
  3805.     // --- [ glGetTexEnvfv ] ---
  3806.  
  3807.     /** JNI method for {@link #glGetTexEnvf(int, int, ByteBuffer)} */
  3808.     public static native void nglGetTexEnvfv(int env, int value, long data, long __functionAddress);
  3809.  
  3810.     /**
  3811.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glGetTexEnv.xml">OpenGL SDK Reference</a>
  3812.      * <p/>
  3813.      * Float version of {@link #glGetTexEnvi(int, int, ByteBuffer)}.
  3814.      *
  3815.      * @param env   the texture environment to query
  3816.      * @param value the value to query
  3817.      * @param data  a scalar or array in which to place the returned data
  3818.      */
  3819.     public static void glGetTexEnvf(int env, int value, ByteBuffer data) {
  3820.         long __functionAddress = getInstance().glGetTexEnvfv;
  3821.         if ( LWJGLUtil.CHECKS ) {
  3822.             checkFunctionAddress(__functionAddress);
  3823.             checkBuffer(data, 1 << 2);
  3824.         }
  3825.         nglGetTexEnvfv(env, value, memAddress(data), __functionAddress);
  3826.     }
  3827.  
  3828.     /** Alternative version of: {@link #glGetTexEnvf(int, int, ByteBuffer)} */
  3829.     public static void glGetTexEnv(int env, int value, FloatBuffer data) {
  3830.         long __functionAddress = getInstance().glGetTexEnvfv;
  3831.         if ( LWJGLUtil.CHECKS ) {
  3832.             checkFunctionAddress(__functionAddress);
  3833.             checkBuffer(data, 1);
  3834.         }
  3835.         nglGetTexEnvfv(env, value, memAddress(data), __functionAddress);
  3836.     }
  3837.  
  3838.     /** Single return value version of: {@link #glGetTexEnvf(int, int, ByteBuffer)} */
  3839.     public static float glGetTexEnvf(int env, int value) {
  3840.         long __functionAddress = getInstance().glGetTexEnvfv;
  3841.         if ( LWJGLUtil.CHECKS )
  3842.             checkFunctionAddress(__functionAddress);
  3843.         APIBuffer __buffer = apiBuffer();
  3844.         int data = __buffer.floatParam();
  3845.         nglGetTexEnvfv(env, value, __buffer.address() + data, __functionAddress);
  3846.         return __buffer.floatValue(data);
  3847.     }
  3848.  
  3849.     // --- [ glGetTexGeniv ] ---
  3850.  
  3851.     /** JNI method for {@link #glGetTexGeni(int, int, ByteBuffer)} */
  3852.     public static native void nglGetTexGeniv(int coord, int value, long data, long __functionAddress);
  3853.  
  3854.     /**
  3855.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  3856.      * <p/>
  3857.      * Returns integer information about {@code value} for {@code coord} in {@code data}.
  3858.      *
  3859.      * @param coord the coord to query. One of:<p/>{@link #GL_S}, {@link #GL_T}, {@link #GL_R}, {@link #GL_Q}
  3860.      * @param value the value to query. One of:<p/>{@link #GL_EYE_PLANE}, {@link #GL_OBJECT_PLANE}, {@link #GL_TEXTURE_GEN_MODE}
  3861.      * @param data  a scalar or array in which to place the returned data
  3862.      */
  3863.     public static void glGetTexGeni(int coord, int value, ByteBuffer data) {
  3864.         long __functionAddress = getInstance().glGetTexGeniv;
  3865.         if ( LWJGLUtil.CHECKS ) {
  3866.             checkFunctionAddress(__functionAddress);
  3867.             checkBuffer(data, 1 << 2);
  3868.         }
  3869.         nglGetTexGeniv(coord, value, memAddress(data), __functionAddress);
  3870.     }
  3871.  
  3872.     /** Alternative version of: {@link #glGetTexGeni(int, int, ByteBuffer)} */
  3873.     public static void glGetTexGen(int coord, int value, IntBuffer data) {
  3874.         long __functionAddress = getInstance().glGetTexGeniv;
  3875.         if ( LWJGLUtil.CHECKS ) {
  3876.             checkFunctionAddress(__functionAddress);
  3877.             checkBuffer(data, 1);
  3878.         }
  3879.         nglGetTexGeniv(coord, value, memAddress(data), __functionAddress);
  3880.     }
  3881.  
  3882.     /** Single return value version of: {@link #glGetTexGeni(int, int, ByteBuffer)} */
  3883.     public static int glGetTexGeni(int coord, int value) {
  3884.         long __functionAddress = getInstance().glGetTexGeniv;
  3885.         if ( LWJGLUtil.CHECKS )
  3886.             checkFunctionAddress(__functionAddress);
  3887.         APIBuffer __buffer = apiBuffer();
  3888.         int data = __buffer.intParam();
  3889.         nglGetTexGeniv(coord, value, __buffer.address() + data, __functionAddress);
  3890.         return __buffer.intValue(data);
  3891.     }
  3892.  
  3893.     // --- [ glGetTexGenfv ] ---
  3894.  
  3895.     /** JNI method for {@link #glGetTexGenf(int, int, ByteBuffer)} */
  3896.     public static native void nglGetTexGenfv(int coord, int value, long data, long __functionAddress);
  3897.  
  3898.     /**
  3899.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  3900.      * <p/>
  3901.      * Float version of {@link #glGetTexGeni(int, int, ByteBuffer)}.
  3902.      *
  3903.      * @param coord the coord to query
  3904.      * @param value the value to query
  3905.      * @param data  a scalar or array in which to place the returned data
  3906.      */
  3907.     public static void glGetTexGenf(int coord, int value, ByteBuffer data) {
  3908.         long __functionAddress = getInstance().glGetTexGenfv;
  3909.         if ( LWJGLUtil.CHECKS ) {
  3910.             checkFunctionAddress(__functionAddress);
  3911.             checkBuffer(data, 4 << 2);
  3912.         }
  3913.         nglGetTexGenfv(coord, value, memAddress(data), __functionAddress);
  3914.     }
  3915.  
  3916.     /** Alternative version of: {@link #glGetTexGenf(int, int, ByteBuffer)} */
  3917.     public static void glGetTexGen(int coord, int value, FloatBuffer data) {
  3918.         long __functionAddress = getInstance().glGetTexGenfv;
  3919.         if ( LWJGLUtil.CHECKS ) {
  3920.             checkFunctionAddress(__functionAddress);
  3921.             checkBuffer(data, 4);
  3922.         }
  3923.         nglGetTexGenfv(coord, value, memAddress(data), __functionAddress);
  3924.     }
  3925.  
  3926.     /** Single return value version of: {@link #glGetTexGenf(int, int, ByteBuffer)} */
  3927.     public static float glGetTexGenf(int coord, int value) {
  3928.         long __functionAddress = getInstance().glGetTexGenfv;
  3929.         if ( LWJGLUtil.CHECKS )
  3930.             checkFunctionAddress(__functionAddress);
  3931.         APIBuffer __buffer = apiBuffer();
  3932.         int data = __buffer.floatParam();
  3933.         nglGetTexGenfv(coord, value, __buffer.address() + data, __functionAddress);
  3934.         return __buffer.floatValue(data);
  3935.     }
  3936.  
  3937.     // --- [ glGetTexGendv ] ---
  3938.  
  3939.     /** JNI method for {@link #glGetTexGend(int, int, ByteBuffer)} */
  3940.     public static native void nglGetTexGendv(int coord, int value, long data, long __functionAddress);
  3941.  
  3942.     /**
  3943.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  3944.      * <p/>
  3945.      * Double version of {@link #glGetTexGeni(int, int, ByteBuffer)}.
  3946.      *
  3947.      * @param coord the coord to query
  3948.      * @param value the value to query
  3949.      * @param data  a scalar or array in which to place the returned data
  3950.      */
  3951.     public static void glGetTexGend(int coord, int value, ByteBuffer data) {
  3952.         long __functionAddress = getInstance().glGetTexGendv;
  3953.         if ( LWJGLUtil.CHECKS ) {
  3954.             checkFunctionAddress(__functionAddress);
  3955.             checkBuffer(data, 4 << 3);
  3956.         }
  3957.         nglGetTexGendv(coord, value, memAddress(data), __functionAddress);
  3958.     }
  3959.  
  3960.     /** Alternative version of: {@link #glGetTexGend(int, int, ByteBuffer)} */
  3961.     public static void glGetTexGen(int coord, int value, DoubleBuffer data) {
  3962.         long __functionAddress = getInstance().glGetTexGendv;
  3963.         if ( LWJGLUtil.CHECKS ) {
  3964.             checkFunctionAddress(__functionAddress);
  3965.             checkBuffer(data, 4);
  3966.         }
  3967.         nglGetTexGendv(coord, value, memAddress(data), __functionAddress);
  3968.     }
  3969.  
  3970.     /** Single return value version of: {@link #glGetTexGend(int, int, ByteBuffer)} */
  3971.     public static double glGetTexGend(int coord, int value) {
  3972.         long __functionAddress = getInstance().glGetTexGendv;
  3973.         if ( LWJGLUtil.CHECKS )
  3974.             checkFunctionAddress(__functionAddress);
  3975.         APIBuffer __buffer = apiBuffer();
  3976.         int data = __buffer.doubleParam();
  3977.         nglGetTexGendv(coord, value, __buffer.address() + data, __functionAddress);
  3978.         return __buffer.doubleValue(data);
  3979.     }
  3980.  
  3981.     // --- [ glGetTexImage ] ---
  3982.  
  3983.     /** JNI method for {@link #glGetTexImage(int, int, int, int, ByteBuffer)} */
  3984.     public static native void nglGetTexImage(int tex, int lod, int format, int type, long img, long __functionAddress);
  3985.  
  3986.     /**
  3987.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glGetTexImage.xml">OpenGL SDK Reference</a>
  3988.      * <p/>
  3989.      * Obtains texture images.
  3990.      *
  3991.      * @param tex    the texture (or texture face) to be obtained. One of:<p/>{@link #GL_TEXTURE_1D}, {@link #GL_TEXTURE_2D}, {@link #GL_TEXTURE_3D}, {@link GL30#GL_TEXTURE_1D_ARRAY}, {@link GL30#GL_TEXTURE_2D_ARRAY}, {@link GL31#GL_TEXTURE_RECTANGLE}, {@link GL11#GL_TEXTURE_CUBE_MAP_POSITIVE_X}, {@link GL11#GL_TEXTURE_CUBE_MAP_NEGATIVE_X}, {@link GL11#GL_TEXTURE_CUBE_MAP_POSITIVE_Y}, {@link GL11#GL_TEXTURE_CUBE_MAP_NEGATIVE_Y}, {@link GL11#GL_TEXTURE_CUBE_MAP_POSITIVE_Z}, {@link GL11#GL_TEXTURE_CUBE_MAP_NEGATIVE_Z}
  3992.      * @param lod    the level-of-detail number
  3993.      * @param format the pixel format. One of:<p/>{@link GL11#GL_STENCIL_INDEX}, {@link GL11#GL_DEPTH_COMPONENT}, {@link GL30#GL_DEPTH_STENCIL}, {@link GL11#GL_RED}, {@link GL11#GL_GREEN}, {@link GL11#GL_BLUE}, {@link GL11#GL_ALPHA}, {@link GL11#GL_RG}, {@link GL11#GL_RGB}, {@link GL11#GL_RGBA}, {@link GL11#GL_BGR}, {@link GL11#GL_BGRA}, {@link GL11#GL_LUMINANCE}, {@link GL11#GL_LUMINANCE_ALPHA}, {@link GL30#GL_RED_INTEGER}, {@link GL30#GL_GREEN_INTEGER}, {@link GL30#GL_BLUE_INTEGER}, {@link GL30#GL_ALPHA_INTEGER}, {@link GL30#GL_RG_INTEGER}, {@link GL30#GL_RGB_INTEGER}, {@link GL30#GL_RGBA_INTEGER}, {@link GL30#GL_BGR_INTEGER}, {@link GL30#GL_BGRA_INTEGER}
  3994.      * @param type   the pixel type. One of:<p/>{@link GL11#GL_UNSIGNED_BYTE}, {@link GL11#GL_BYTE}, {@link GL11#GL_UNSIGNED_SHORT}, {@link GL11#GL_SHORT}, {@link GL11#GL_UNSIGNED_INT}, {@link GL11#GL_INT}, {@link GL30#GL_HALF_FLOAT}, {@link GL11#GL_FLOAT}, {@link GL12#GL_UNSIGNED_BYTE_3_3_2}, {@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV}, {@link GL12#GL_UNSIGNED_SHORT_5_6_5}, {@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV}, {@link GL12#GL_UNSIGNED_SHORT_4_4_4_4}, {@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV}, {@link GL12#GL_UNSIGNED_SHORT_5_5_5_1}, {@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV}, {@link GL12#GL_UNSIGNED_INT_8_8_8_8}, {@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV}, {@link GL12#GL_UNSIGNED_INT_10_10_10_2}, {@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV}, {@link GL30#GL_UNSIGNED_INT_24_8}, {@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV}, {@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV}, {@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV}, {@link GL11#GL_BITMAP}
  3995.      * @param img    the array in which to place the returned data
  3996.      */
  3997.     public static void glGetTexImage(int tex, int lod, int format, int type, ByteBuffer img) {
  3998.         long __functionAddress = getInstance().glGetTexImage;
  3999.         if ( LWJGLUtil.CHECKS ) {
  4000.             checkFunctionAddress(__functionAddress);
  4001.             GLChecks.ensureBufferObject(0x88ED, false);
  4002.         }
  4003.         nglGetTexImage(tex, lod, format, type, memAddress(img), __functionAddress);
  4004.     }
  4005.  
  4006.     /** Buffer object offset version of: {@link #glGetTexImage(int, int, int, int, ByteBuffer)} */
  4007.     public static void glGetTexImage(int tex, int lod, int format, int type, long imgOffset) {
  4008.         long __functionAddress = getInstance().glGetTexImage;
  4009.         if ( LWJGLUtil.CHECKS ) {
  4010.             checkFunctionAddress(__functionAddress);
  4011.             GLChecks.ensureBufferObject(0x88ED, true);
  4012.         }
  4013.         nglGetTexImage(tex, lod, format, type, imgOffset, __functionAddress);
  4014.     }
  4015.  
  4016.     /** ShortBuffer version of: {@link #glGetTexImage(int, int, int, int, ByteBuffer)} */
  4017.     public static void glGetTexImage(int tex, int lod, int format, int type, ShortBuffer img) {
  4018.         long __functionAddress = getInstance().glGetTexImage;
  4019.         if ( LWJGLUtil.CHECKS ) {
  4020.             checkFunctionAddress(__functionAddress);
  4021.             GLChecks.ensureBufferObject(0x88ED, false);
  4022.         }
  4023.         nglGetTexImage(tex, lod, format, type, memAddress(img), __functionAddress);
  4024.     }
  4025.  
  4026.     /** IntBuffer version of: {@link #glGetTexImage(int, int, int, int, ByteBuffer)} */
  4027.     public static void glGetTexImage(int tex, int lod, int format, int type, IntBuffer img) {
  4028.         long __functionAddress = getInstance().glGetTexImage;
  4029.         if ( LWJGLUtil.CHECKS ) {
  4030.             checkFunctionAddress(__functionAddress);
  4031.             GLChecks.ensureBufferObject(0x88ED, false);
  4032.         }
  4033.         nglGetTexImage(tex, lod, format, type, memAddress(img), __functionAddress);
  4034.     }
  4035.  
  4036.     /** FloatBuffer version of: {@link #glGetTexImage(int, int, int, int, ByteBuffer)} */
  4037.     public static void glGetTexImage(int tex, int lod, int format, int type, FloatBuffer img) {
  4038.         long __functionAddress = getInstance().glGetTexImage;
  4039.         if ( LWJGLUtil.CHECKS ) {
  4040.             checkFunctionAddress(__functionAddress);
  4041.             GLChecks.ensureBufferObject(0x88ED, false);
  4042.         }
  4043.         nglGetTexImage(tex, lod, format, type, memAddress(img), __functionAddress);
  4044.     }
  4045.  
  4046.     /** DoubleBuffer version of: {@link #glGetTexImage(int, int, int, int, ByteBuffer)} */
  4047.     public static void glGetTexImage(int tex, int lod, int format, int type, DoubleBuffer img) {
  4048.         long __functionAddress = getInstance().glGetTexImage;
  4049.         if ( LWJGLUtil.CHECKS ) {
  4050.             checkFunctionAddress(__functionAddress);
  4051.             GLChecks.ensureBufferObject(0x88ED, false);
  4052.         }
  4053.         nglGetTexImage(tex, lod, format, type, memAddress(img), __functionAddress);
  4054.     }
  4055.  
  4056.     // --- [ glGetTexLevelParameteriv ] ---
  4057.  
  4058.     /** JNI method for {@link #glGetTexLevelParameteri(int, int, int, ByteBuffer)} */
  4059.     public static native void nglGetTexLevelParameteriv(int target, int lod, int value, long data, long __functionAddress);
  4060.  
  4061.     /**
  4062.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glGetTexLevelParameter.xml">OpenGL SDK Reference</a>
  4063.      * <p/>
  4064.      * Places integer information about texture image parameter {@code value} for level-of-detail {@code lod} of the specified {@code target} into {@code data}.
  4065.      *
  4066.      * @param target the texture image target. One of:<p/>{@link GL11#GL_TEXTURE_2D}, {@link GL30#GL_TEXTURE_1D_ARRAY}, {@link GL31#GL_TEXTURE_RECTANGLE}, {@link GL13#GL_TEXTURE_CUBE_MAP}, {@link GL11#GL_PROXY_TEXTURE_2D}, {@link GL30#GL_PROXY_TEXTURE_1D_ARRAY}, {@link GL31#GL_PROXY_TEXTURE_RECTANGLE}, {@link GL13#GL_PROXY_TEXTURE_CUBE_MAP}, {@link #GL_TEXTURE_1D}, {@link #GL_TEXTURE_3D}, {@link GL30#GL_TEXTURE_2D_ARRAY}, {@link GL30#GL_TEXTURE_CUBE_MAP_ARRAY}, {@link GL32#GL_TEXTURE_2D_MULTISAMPLE}, {@link GL32#GL_TEXTURE_2D_MULTISAMPLE_ARRAY}, {@link #GL_PROXY_TEXTURE_1D}, {@link #GL_PROXY_TEXTURE_3D}, {@link GL30#GL_PROXY_TEXTURE_2D_ARRAY}, {@link GL30#GL_PROXY_TEXTURE_CUBE_MAP_ARRAY}, {@link GL32#GL_PROXY_TEXTURE_2D_MULTISAMPLE}, {@link GL32#GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY}
  4067.      * @param lod    the level-of-detail number
  4068.      * @param value  the value to query. One of:<p/>{@link #GL_TEXTURE_WIDTH}, {@link #GL_TEXTURE_HEIGHT}, {@link #GL_TEXTURE_DEPTH}, {@link #GL_TEXTURE_BORDER}, {@link #GL_TEXTURE_SAMPLES}, {@link #GL_TEXTURE_FIXED_SAMPLE_LOCATIONS}, {@link #GL_TEXTURE_INTERNAL_FORMAT}, {@link #GL_TEXTURE_RED_SIZE}, {@link #GL_TEXTURE_GREEN_SIZE}, {@link #GL_TEXTURE_BLUE_SIZE}, {@link #GL_TEXTURE_ALPHA_SIZE}, {@link #GL_TEXTURE_LUMINANCE_SIZE}, {@link #GL_TEXTURE_INTENSITY_SIZE}, {@link #GL_TEXTURE_DEPTH_SIZE}, {@link #GL_TEXTURE_STENCIL_SIZE}, {@link #GL_TEXTURE_SHARED_SIZE}, {@link #GL_TEXTURE_RED_TYPE}, {@link #GL_TEXTURE_GREEN_TYPE}, {@link #GL_TEXTURE_BLUE_TYPE}, {@link #GL_TEXTURE_ALPHA_TYPE}, {@link #GL_TEXTURE_LUMINANCE_TYPE}, {@link #GL_TEXTURE_INTENSITY_TYPE}, {@link #GL_TEXTURE_DEPTH_TYPE}, {@link #GL_TEXTURE_COMPRESSED}, {@link #GL_TEXTURE_COMPRESSED_IMAGE_SIZE}, {@link #GL_TEXTURE_BUFFER_DATA_STORE_BINDING}, {@link #GL_TEXTURE_BUFFER_OFFSET}, {@link #GL_TEXTURE_BUFFER_SIZE}
  4069.      * @param data   a scalar or array in which to place the returned data
  4070.      */
  4071.     public static void glGetTexLevelParameteri(int target, int lod, int value, ByteBuffer data) {
  4072.         long __functionAddress = getInstance().glGetTexLevelParameteriv;
  4073.         if ( LWJGLUtil.CHECKS ) {
  4074.             checkFunctionAddress(__functionAddress);
  4075.             checkBuffer(data, 4 << 2);
  4076.         }
  4077.         nglGetTexLevelParameteriv(target, lod, value, memAddress(data), __functionAddress);
  4078.     }
  4079.  
  4080.     /** Alternative version of: {@link #glGetTexLevelParameteri(int, int, int, ByteBuffer)} */
  4081.     public static void glGetTexLevelParameter(int target, int lod, int value, IntBuffer data) {
  4082.         long __functionAddress = getInstance().glGetTexLevelParameteriv;
  4083.         if ( LWJGLUtil.CHECKS ) {
  4084.             checkFunctionAddress(__functionAddress);
  4085.             checkBuffer(data, 4);
  4086.         }
  4087.         nglGetTexLevelParameteriv(target, lod, value, memAddress(data), __functionAddress);
  4088.     }
  4089.  
  4090.     /** Single return value version of: {@link #glGetTexLevelParameteri(int, int, int, ByteBuffer)} */
  4091.     public static int glGetTexLevelParameteri(int target, int lod, int value) {
  4092.         long __functionAddress = getInstance().glGetTexLevelParameteriv;
  4093.         if ( LWJGLUtil.CHECKS )
  4094.             checkFunctionAddress(__functionAddress);
  4095.         APIBuffer __buffer = apiBuffer();
  4096.         int data = __buffer.intParam();
  4097.         nglGetTexLevelParameteriv(target, lod, value, __buffer.address() + data, __functionAddress);
  4098.         return __buffer.intValue(data);
  4099.     }
  4100.  
  4101.     // --- [ glGetTexLevelParameterfv ] ---
  4102.  
  4103.     /** JNI method for {@link #glGetTexLevelParameterf(int, int, int, ByteBuffer)} */
  4104.     public static native void nglGetTexLevelParameterfv(int target, int lod, int value, long data, long __functionAddress);
  4105.  
  4106.     /**
  4107.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glGetTexLevelParameter.xml">OpenGL SDK Reference</a>
  4108.      * <p/>
  4109.      * Float version of {@link #glGetTexLevelParameteri(int, int, int, ByteBuffer)}.
  4110.      *
  4111.      * @param target the texture image target
  4112.      * @param lod    the level-of-detail number
  4113.      * @param value  the value to query
  4114.      * @param data   a scalar or array in which to place the returned data
  4115.      */
  4116.     public static void glGetTexLevelParameterf(int target, int lod, int value, ByteBuffer data) {
  4117.         long __functionAddress = getInstance().glGetTexLevelParameterfv;
  4118.         if ( LWJGLUtil.CHECKS ) {
  4119.             checkFunctionAddress(__functionAddress);
  4120.             checkBuffer(data, 4 << 2);
  4121.         }
  4122.         nglGetTexLevelParameterfv(target, lod, value, memAddress(data), __functionAddress);
  4123.     }
  4124.  
  4125.     /** Alternative version of: {@link #glGetTexLevelParameterf(int, int, int, ByteBuffer)} */
  4126.     public static void glGetTexLevelParameter(int target, int lod, int value, FloatBuffer data) {
  4127.         long __functionAddress = getInstance().glGetTexLevelParameterfv;
  4128.         if ( LWJGLUtil.CHECKS ) {
  4129.             checkFunctionAddress(__functionAddress);
  4130.             checkBuffer(data, 4);
  4131.         }
  4132.         nglGetTexLevelParameterfv(target, lod, value, memAddress(data), __functionAddress);
  4133.     }
  4134.  
  4135.     /** Single return value version of: {@link #glGetTexLevelParameterf(int, int, int, ByteBuffer)} */
  4136.     public static float glGetTexLevelParameterf(int target, int lod, int value) {
  4137.         long __functionAddress = getInstance().glGetTexLevelParameterfv;
  4138.         if ( LWJGLUtil.CHECKS )
  4139.             checkFunctionAddress(__functionAddress);
  4140.         APIBuffer __buffer = apiBuffer();
  4141.         int data = __buffer.floatParam();
  4142.         nglGetTexLevelParameterfv(target, lod, value, __buffer.address() + data, __functionAddress);
  4143.         return __buffer.floatValue(data);
  4144.     }
  4145.  
  4146.     // --- [ glGetTexParameteriv ] ---
  4147.  
  4148.     /** JNI method for {@link #glGetTexParameteri(int, int, ByteBuffer)} */
  4149.     public static native void nglGetTexParameteriv(int target, int value, long data, long __functionAddress);
  4150.  
  4151.     /**
  4152.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glGetTexParameter.xml">OpenGL SDK Reference</a>
  4153.      * <p/>
  4154.      * Place integer information about texture parameter {@code value} for the specified {@code target} into {@code data}.
  4155.      *
  4156.      * @param target the texture target. One of:<p/>{@link #GL_TEXTURE_1D}, {@link #GL_TEXTURE_2D}, {@link #GL_TEXTURE_3D}, {@link GL30#GL_TEXTURE_1D_ARRAY}, {@link GL30#GL_TEXTURE_2D_ARRAY}, {@link GL31#GL_TEXTURE_RECTANGLE}, {@link #GL_TEXTURE_CUBE_MAP}, {@link GL30#GL_TEXTURE_CUBE_MAP_ARRAY}, {@link GL32#GL_TEXTURE_2D_MULTISAMPLE}, {@link GL32#GL_TEXTURE_2D_MULTISAMPLE_ARRAY}
  4157.      * @param value  the value to query. One of:<p/>{@link #GL_TEXTURE_BASE_LEVEL}, {@link #GL_TEXTURE_BORDER_COLOR}, {@link #GL_TEXTURE_COMPARE_MODE}, {@link #GL_TEXTURE_COMPARE_FUNC}, {@link #GL_TEXTURE_LOD_BIAS}, {@link #GL_TEXTURE_MAG_FILTER}, {@link #GL_TEXTURE_MAX_LEVEL}, {@link #GL_TEXTURE_MAX_LOD}, {@link #GL_TEXTURE_MIN_FILTER}, {@link #GL_TEXTURE_MIN_LOD}, {@link #GL_TEXTURE_PRIORITY}, {@link #GL_TEXTURE_SWIZZLE_R}, {@link #GL_TEXTURE_SWIZZLE_G}, {@link #GL_TEXTURE_SWIZZLE_B}, {@link #GL_TEXTURE_SWIZZLE_A}, {@link #GL_TEXTURE_SWIZZLE_RGBA}, {@link #GL_TEXTURE_WRAP_S}, {@link #GL_TEXTURE_WRAP_T}, {@link #GL_TEXTURE_WRAP_R}, {@link #GL_DEPTH_TEXTURE_MODE}, {@link #GL_DEPTH_TEXTURE_STENCIL_MODE}, {@link #GL_GENERATE_MIPMAP}, {@link #GL_IMAGE_FORMAT_COMPATIBILITY_TYPE}, {@link #GL_TEXTURE_IMMUTABLE_FORMAT}, {@link #GL_TEXTURE_IMMUTABLE_LEVELS}, {@link #GL_TEXTURE_VIEW_MIN_LEVEL}, {@link #GL_TEXTURE_VIEW_NUM_LEVELS}, {@link #GL_TEXTURE_VIEW_MIN_LAYER}, {@link #GL_TEXTURE_VIEW_NUM_LAYERS}, {@link #GL_TEXTURE_RESIDENT}
  4158.      * @param data   a scalar or array in which to place the returned data
  4159.      */
  4160.     public static void glGetTexParameteri(int target, int value, ByteBuffer data) {
  4161.         long __functionAddress = getInstance().glGetTexParameteriv;
  4162.         if ( LWJGLUtil.CHECKS ) {
  4163.             checkFunctionAddress(__functionAddress);
  4164.             checkBuffer(data, 1 << 2);
  4165.         }
  4166.         nglGetTexParameteriv(target, value, memAddress(data), __functionAddress);
  4167.     }
  4168.  
  4169.     /** Alternative version of: {@link #glGetTexParameteri(int, int, ByteBuffer)} */
  4170.     public static void glGetTexParameter(int target, int value, IntBuffer data) {
  4171.         long __functionAddress = getInstance().glGetTexParameteriv;
  4172.         if ( LWJGLUtil.CHECKS ) {
  4173.             checkFunctionAddress(__functionAddress);
  4174.             checkBuffer(data, 1);
  4175.         }
  4176.         nglGetTexParameteriv(target, value, memAddress(data), __functionAddress);
  4177.     }
  4178.  
  4179.     /** Single return value version of: {@link #glGetTexParameteri(int, int, ByteBuffer)} */
  4180.     public static int glGetTexParameteri(int target, int value) {
  4181.         long __functionAddress = getInstance().glGetTexParameteriv;
  4182.         if ( LWJGLUtil.CHECKS )
  4183.             checkFunctionAddress(__functionAddress);
  4184.         APIBuffer __buffer = apiBuffer();
  4185.         int data = __buffer.intParam();
  4186.         nglGetTexParameteriv(target, value, __buffer.address() + data, __functionAddress);
  4187.         return __buffer.intValue(data);
  4188.     }
  4189.  
  4190.     // --- [ glGetTexParameterfv ] ---
  4191.  
  4192.     /** JNI method for {@link #glGetTexParameterf(int, int, ByteBuffer)} */
  4193.     public static native void nglGetTexParameterfv(int target, int value, long data, long __functionAddress);
  4194.  
  4195.     /**
  4196.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glGetTexParameter.xml">OpenGL SDK Reference</a>
  4197.      * <p/>
  4198.      * Float version of {@link #glGetTexParameteri(int, int, ByteBuffer)}.
  4199.      *
  4200.      * @param target the texture target
  4201.      * @param value  the value to query
  4202.      * @param data   a scalar or array in which to place the returned data
  4203.      */
  4204.     public static void glGetTexParameterf(int target, int value, ByteBuffer data) {
  4205.         long __functionAddress = getInstance().glGetTexParameterfv;
  4206.         if ( LWJGLUtil.CHECKS ) {
  4207.             checkFunctionAddress(__functionAddress);
  4208.             checkBuffer(data, 1 << 2);
  4209.         }
  4210.         nglGetTexParameterfv(target, value, memAddress(data), __functionAddress);
  4211.     }
  4212.  
  4213.     /** Alternative version of: {@link #glGetTexParameterf(int, int, ByteBuffer)} */
  4214.     public static void glGetTexParameter(int target, int value, FloatBuffer data) {
  4215.         long __functionAddress = getInstance().glGetTexParameterfv;
  4216.         if ( LWJGLUtil.CHECKS ) {
  4217.             checkFunctionAddress(__functionAddress);
  4218.             checkBuffer(data, 1);
  4219.         }
  4220.         nglGetTexParameterfv(target, value, memAddress(data), __functionAddress);
  4221.     }
  4222.  
  4223.     /** Single return value version of: {@link #glGetTexParameterf(int, int, ByteBuffer)} */
  4224.     public static float glGetTexParameterf(int target, int value) {
  4225.         long __functionAddress = getInstance().glGetTexParameterfv;
  4226.         if ( LWJGLUtil.CHECKS )
  4227.             checkFunctionAddress(__functionAddress);
  4228.         APIBuffer __buffer = apiBuffer();
  4229.         int data = __buffer.floatParam();
  4230.         nglGetTexParameterfv(target, value, __buffer.address() + data, __functionAddress);
  4231.         return __buffer.floatValue(data);
  4232.     }
  4233.  
  4234.     // --- [ glHint ] ---
  4235.  
  4236.     /** JNI method for {@link #glHint(int, int)} */
  4237.     public static native void nglHint(int target, int hint, long __functionAddress);
  4238.  
  4239.     /**
  4240.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glHint.xml">OpenGL SDK Reference</a>
  4241.      * <p/>
  4242.      * Certain aspects of GL behavior, when there is room for variation, may be controlled with this function. The initial value for all hints is
  4243.      * {@link #GL_DONT_CARE}.
  4244.      *
  4245.      * @param target the behavior to control. One of:<p/>{@link #GL_PERSPECTIVE_CORRECTION_HINT}, {@link #GL_POINT_SMOOTH_HINT}, {@link #GL_LINE_SMOOTH_HINT}, {@link #GL_POLYGON_SMOOTH_HINT}, {@link #GL_FOG_HINT}, {@link #GL_GENERATE_MIPMAP_HINT}, {@link #GL_TEXTURE_COMPRESSION_HINT}, {@link #GL_FRAGMENT_SHADER_DERIVATIVE_HINT}
  4246.      * @param hint   the behavior hint. One of:<p/>{@link #GL_FASTEST}, {@link #GL_NICEST}, {@link #GL_DONT_CARE}
  4247.      */
  4248.     public static void glHint(int target, int hint) {
  4249.         long __functionAddress = getInstance().glHint;
  4250.         if ( LWJGLUtil.CHECKS )
  4251.             checkFunctionAddress(__functionAddress);
  4252.         nglHint(target, hint, __functionAddress);
  4253.     }
  4254.  
  4255.     // --- [ glInitNames ] ---
  4256.  
  4257.     /** JNI method for {@link #glInitNames()} */
  4258.     public static native void nglInitNames(long __functionAddress);
  4259.  
  4260.     /**
  4261.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4262.      * <p/>
  4263.      * Clears the selection name stack.
  4264.      */
  4265.     public static void glInitNames() {
  4266.         long __functionAddress = getInstance().glInitNames;
  4267.         if ( LWJGLUtil.CHECKS )
  4268.             checkFunctionAddress(__functionAddress);
  4269.         nglInitNames(__functionAddress);
  4270.     }
  4271.  
  4272.     // --- [ glInterleavedArrays ] ---
  4273.  
  4274.     /** JNI method for {@link #glInterleavedArrays(int, int, ByteBuffer)} */
  4275.     public static native void nglInterleavedArrays(int format, int stride, long pointer, long __functionAddress);
  4276.  
  4277.     /**
  4278.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glInterleavedArrays.xml">OpenGL SDK Reference</a>
  4279.      * <p/>
  4280.      * Efficiently initializes the six vertex arrays and their enables to one of 14 configurations.
  4281.      *
  4282.      * @param format  the interleaved array format. One of:<p/>{@link #GL_V2F}, {@link #GL_V3F}, {@link #GL_C4UB_V2F}, {@link #GL_C4UB_V3F}, {@link #GL_C3F_V3F}, {@link #GL_N3F_V3F}, {@link #GL_C4F_N3F_V3F}, {@link #GL_T2F_V3F}, {@link #GL_T4F_V4F}, {@link #GL_T2F_C4UB_V3F}, {@link #GL_T2F_C3F_V3F}, {@link #GL_T2F_N3F_V3F}, {@link #GL_T2F_C4F_N3F_V3F}, {@link #GL_T4F_C4F_N3F_V4F}
  4283.      * @param stride  the vertex stride in bytes. If specified as zero, then array elements are stored sequentially
  4284.      * @param pointer the vertex array data
  4285.      */
  4286.     public static void glInterleavedArrays(int format, int stride, ByteBuffer pointer) {
  4287.         long __functionAddress = getInstance().glInterleavedArrays;
  4288.         if ( LWJGLUtil.CHECKS ) {
  4289.             checkFunctionAddress(__functionAddress);
  4290.             GLChecks.ensureBufferObject(0x8894, false);
  4291.         }
  4292.         nglInterleavedArrays(format, stride, memAddress(pointer), __functionAddress);
  4293.     }
  4294.  
  4295.     /** Buffer object offset version of: {@link #glInterleavedArrays(int, int, ByteBuffer)} */
  4296.     public static void glInterleavedArrays(int format, int stride, long pointerOffset) {
  4297.         long __functionAddress = getInstance().glInterleavedArrays;
  4298.         if ( LWJGLUtil.CHECKS ) {
  4299.             checkFunctionAddress(__functionAddress);
  4300.             GLChecks.ensureBufferObject(0x8894, true);
  4301.         }
  4302.         nglInterleavedArrays(format, stride, pointerOffset, __functionAddress);
  4303.     }
  4304.  
  4305.     /** ShortBuffer version of: {@link #glInterleavedArrays(int, int, ByteBuffer)} */
  4306.     public static void glInterleavedArrays(int format, int stride, ShortBuffer pointer) {
  4307.         long __functionAddress = getInstance().glInterleavedArrays;
  4308.         if ( LWJGLUtil.CHECKS ) {
  4309.             checkFunctionAddress(__functionAddress);
  4310.             GLChecks.ensureBufferObject(0x8894, false);
  4311.         }
  4312.         nglInterleavedArrays(format, stride, memAddress(pointer), __functionAddress);
  4313.     }
  4314.  
  4315.     /** IntBuffer version of: {@link #glInterleavedArrays(int, int, ByteBuffer)} */
  4316.     public static void glInterleavedArrays(int format, int stride, IntBuffer pointer) {
  4317.         long __functionAddress = getInstance().glInterleavedArrays;
  4318.         if ( LWJGLUtil.CHECKS ) {
  4319.             checkFunctionAddress(__functionAddress);
  4320.             GLChecks.ensureBufferObject(0x8894, false);
  4321.         }
  4322.         nglInterleavedArrays(format, stride, memAddress(pointer), __functionAddress);
  4323.     }
  4324.  
  4325.     /** FloatBuffer version of: {@link #glInterleavedArrays(int, int, ByteBuffer)} */
  4326.     public static void glInterleavedArrays(int format, int stride, FloatBuffer pointer) {
  4327.         long __functionAddress = getInstance().glInterleavedArrays;
  4328.         if ( LWJGLUtil.CHECKS ) {
  4329.             checkFunctionAddress(__functionAddress);
  4330.             GLChecks.ensureBufferObject(0x8894, false);
  4331.         }
  4332.         nglInterleavedArrays(format, stride, memAddress(pointer), __functionAddress);
  4333.     }
  4334.  
  4335.     /** DoubleBuffer version of: {@link #glInterleavedArrays(int, int, ByteBuffer)} */
  4336.     public static void glInterleavedArrays(int format, int stride, DoubleBuffer pointer) {
  4337.         long __functionAddress = getInstance().glInterleavedArrays;
  4338.         if ( LWJGLUtil.CHECKS ) {
  4339.             checkFunctionAddress(__functionAddress);
  4340.             GLChecks.ensureBufferObject(0x8894, false);
  4341.         }
  4342.         nglInterleavedArrays(format, stride, memAddress(pointer), __functionAddress);
  4343.     }
  4344.  
  4345.     // --- [ glIsEnabled ] ---
  4346.  
  4347.     /** JNI method for {@link #glIsEnabled(int)} */
  4348.     public static native boolean nglIsEnabled(int cap, long __functionAddress);
  4349.  
  4350.     /**
  4351.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glIsEnabled.xml">OpenGL SDK Reference</a>
  4352.      * <p/>
  4353.      * Determines if {@code cap} is currently enabled (as with {@link #glEnable(int)}) or disabled.
  4354.      *
  4355.      * @param cap the enable state to query
  4356.      */
  4357.     public static boolean glIsEnabled(int cap) {
  4358.         long __functionAddress = getInstance().glIsEnabled;
  4359.         if ( LWJGLUtil.CHECKS )
  4360.             checkFunctionAddress(__functionAddress);
  4361.         return nglIsEnabled(cap, __functionAddress);
  4362.     }
  4363.  
  4364.     // --- [ glIsList ] ---
  4365.  
  4366.     /** JNI method for {@link #glIsList(int)} */
  4367.     public static native boolean nglIsList(int list, long __functionAddress);
  4368.  
  4369.     /**
  4370.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4371.      * <p/>
  4372.      * Returns true if the {@code list} is the index of some display list.
  4373.      *
  4374.      * @param list the list index to query
  4375.      */
  4376.     public static boolean glIsList(int list) {
  4377.         long __functionAddress = getInstance().glIsList;
  4378.         if ( LWJGLUtil.CHECKS )
  4379.             checkFunctionAddress(__functionAddress);
  4380.         return nglIsList(list, __functionAddress);
  4381.     }
  4382.  
  4383.     // --- [ glIsTexture ] ---
  4384.  
  4385.     /** JNI method for {@link #glIsTexture(int)} */
  4386.     public static native boolean nglIsTexture(int texture, long __functionAddress);
  4387.  
  4388.     /**
  4389.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glIsTexture.xml">OpenGL SDK Reference</a>
  4390.      * <p/>
  4391.      * Returns true if {@code texture} is the name of a texture object.
  4392.      *
  4393.      * @param texture the texture name to query
  4394.      */
  4395.     public static boolean glIsTexture(int texture) {
  4396.         long __functionAddress = getInstance().glIsTexture;
  4397.         if ( LWJGLUtil.CHECKS )
  4398.             checkFunctionAddress(__functionAddress);
  4399.         return nglIsTexture(texture, __functionAddress);
  4400.     }
  4401.  
  4402.     // --- [ glLightModeli ] ---
  4403.  
  4404.     /** JNI method for {@link #glLightModeli(int, int)} */
  4405.     public static native void nglLightModeli(int pname, int param, long __functionAddress);
  4406.  
  4407.     /**
  4408.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4409.      * <p/>
  4410.      * Set the integer value of a lighting model parameter.
  4411.      *
  4412.      * @param pname the lighting model parameter to set. One of:<p/>{@link #GL_LIGHT_MODEL_AMBIENT}, {@link #GL_LIGHT_MODEL_LOCAL_VIEWER}, {@link #GL_LIGHT_MODEL_TWO_SIDE}, {@link #GL_LIGHT_MODEL_COLOR_CONTROL}
  4413.      * @param param the parameter value
  4414.      */
  4415.     public static void glLightModeli(int pname, int param) {
  4416.         long __functionAddress = getInstance().glLightModeli;
  4417.         if ( LWJGLUtil.CHECKS )
  4418.             checkFunctionAddress(__functionAddress);
  4419.         nglLightModeli(pname, param, __functionAddress);
  4420.     }
  4421.  
  4422.     // --- [ glLightModelf ] ---
  4423.  
  4424.     /** JNI method for {@link #glLightModelf(int, float)} */
  4425.     public static native void nglLightModelf(int pname, float param, long __functionAddress);
  4426.  
  4427.     /**
  4428.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4429.      * <p/>
  4430.      * Float version of {@link #glLightModeli(int, int)}.
  4431.      *
  4432.      * @param pname the lighting model parameter to set
  4433.      * @param param the parameter value
  4434.      */
  4435.     public static void glLightModelf(int pname, float param) {
  4436.         long __functionAddress = getInstance().glLightModelf;
  4437.         if ( LWJGLUtil.CHECKS )
  4438.             checkFunctionAddress(__functionAddress);
  4439.         nglLightModelf(pname, param, __functionAddress);
  4440.     }
  4441.  
  4442.     // --- [ glLightModeliv ] ---
  4443.  
  4444.     /** JNI method for {@link #glLightModeli(int, ByteBuffer)} */
  4445.     public static native void nglLightModeliv(int pname, long params, long __functionAddress);
  4446.  
  4447.     /**
  4448.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4449.      * <p/>
  4450.      * Pointer version of {@link #glLightModeli(int, int)}.
  4451.      *
  4452.      * @param pname  the lighting model parameter to set
  4453.      * @param params the parameter value
  4454.      */
  4455.     public static void glLightModeli(int pname, ByteBuffer params) {
  4456.         long __functionAddress = getInstance().glLightModeliv;
  4457.         if ( LWJGLUtil.CHECKS ) {
  4458.             checkFunctionAddress(__functionAddress);
  4459.             checkBuffer(params, 4 << 2);
  4460.         }
  4461.         nglLightModeliv(pname, memAddress(params), __functionAddress);
  4462.     }
  4463.  
  4464.     /** Alternative version of: {@link #glLightModeli(int, ByteBuffer)} */
  4465.     public static void glLightModel(int pname, IntBuffer params) {
  4466.         long __functionAddress = getInstance().glLightModeliv;
  4467.         if ( LWJGLUtil.CHECKS ) {
  4468.             checkFunctionAddress(__functionAddress);
  4469.             checkBuffer(params, 4);
  4470.         }
  4471.         nglLightModeliv(pname, memAddress(params), __functionAddress);
  4472.     }
  4473.  
  4474.     // --- [ glLightModelfv ] ---
  4475.  
  4476.     /** JNI method for {@link #glLightModelf(int, ByteBuffer)} */
  4477.     public static native void nglLightModelfv(int pname, long params, long __functionAddress);
  4478.  
  4479.     /**
  4480.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4481.      * <p/>
  4482.      * Pointer version of {@link #glLightModelf(int, float)}.
  4483.      *
  4484.      * @param pname  the lighting model parameter to set
  4485.      * @param params the parameter value
  4486.      */
  4487.     public static void glLightModelf(int pname, ByteBuffer params) {
  4488.         long __functionAddress = getInstance().glLightModelfv;
  4489.         if ( LWJGLUtil.CHECKS ) {
  4490.             checkFunctionAddress(__functionAddress);
  4491.             checkBuffer(params, 4 << 2);
  4492.         }
  4493.         nglLightModelfv(pname, memAddress(params), __functionAddress);
  4494.     }
  4495.  
  4496.     /** Alternative version of: {@link #glLightModelf(int, ByteBuffer)} */
  4497.     public static void glLightModel(int pname, FloatBuffer params) {
  4498.         long __functionAddress = getInstance().glLightModelfv;
  4499.         if ( LWJGLUtil.CHECKS ) {
  4500.             checkFunctionAddress(__functionAddress);
  4501.             checkBuffer(params, 4);
  4502.         }
  4503.         nglLightModelfv(pname, memAddress(params), __functionAddress);
  4504.     }
  4505.  
  4506.     // --- [ glLighti ] ---
  4507.  
  4508.     /** JNI method for {@link #glLighti(int, int, int)} */
  4509.     public static native void nglLighti(int light, int pname, int param, long __functionAddress);
  4510.  
  4511.     /**
  4512.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4513.      * <p/>
  4514.      * Sets the integer value of a light parameter.
  4515.      *
  4516.      * @param light the light for which to set the parameter. One of:<p/>{@link #GL_LIGHT0}, GL_LIGHT[1-7]
  4517.      * @param pname the parameter to set. One of:<p/>{@link #GL_AMBIENT}, {@link #GL_DIFFUSE}, {@link #GL_SPECULAR}, {@link #GL_POSITION}, {@link #GL_CONSTANT_ATTENUATION}, {@link #GL_LINEAR_ATTENUATION}, {@link #GL_QUADRATIC_ATTENUATION}, {@link #GL_SPOT_DIRECTION}, {@link #GL_SPOT_EXPONENT}, {@link #GL_SPOT_CUTUFF}
  4518.      * @param param the parameter value
  4519.      */
  4520.     public static void glLighti(int light, int pname, int param) {
  4521.         long __functionAddress = getInstance().glLighti;
  4522.         if ( LWJGLUtil.CHECKS )
  4523.             checkFunctionAddress(__functionAddress);
  4524.         nglLighti(light, pname, param, __functionAddress);
  4525.     }
  4526.  
  4527.     // --- [ glLightf ] ---
  4528.  
  4529.     /** JNI method for {@link #glLightf(int, int, float)} */
  4530.     public static native void nglLightf(int light, int pname, float param, long __functionAddress);
  4531.  
  4532.     /**
  4533.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4534.      * <p/>
  4535.      * Float version of {@link #glLighti(int, int, int)}.
  4536.      *
  4537.      * @param light the light for which to set the parameter
  4538.      * @param pname the parameter to set
  4539.      * @param param the parameter value
  4540.      */
  4541.     public static void glLightf(int light, int pname, float param) {
  4542.         long __functionAddress = getInstance().glLightf;
  4543.         if ( LWJGLUtil.CHECKS )
  4544.             checkFunctionAddress(__functionAddress);
  4545.         nglLightf(light, pname, param, __functionAddress);
  4546.     }
  4547.  
  4548.     // --- [ glLightiv ] ---
  4549.  
  4550.     /** JNI method for {@link #glLighti(int, int, ByteBuffer)} */
  4551.     public static native void nglLightiv(int light, int pname, long params, long __functionAddress);
  4552.  
  4553.     /**
  4554.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4555.      * <p/>
  4556.      * Pointer version of {@link #glLighti(int, int, int)}.
  4557.      *
  4558.      * @param light  the light for which to set the parameter
  4559.      * @param pname  the parameter to set
  4560.      * @param params the parameter value
  4561.      */
  4562.     public static void glLighti(int light, int pname, ByteBuffer params) {
  4563.         long __functionAddress = getInstance().glLightiv;
  4564.         if ( LWJGLUtil.CHECKS ) {
  4565.             checkFunctionAddress(__functionAddress);
  4566.             checkBuffer(params, 4 << 2);
  4567.         }
  4568.         nglLightiv(light, pname, memAddress(params), __functionAddress);
  4569.     }
  4570.  
  4571.     /** Alternative version of: {@link #glLighti(int, int, ByteBuffer)} */
  4572.     public static void glLight(int light, int pname, IntBuffer params) {
  4573.         long __functionAddress = getInstance().glLightiv;
  4574.         if ( LWJGLUtil.CHECKS ) {
  4575.             checkFunctionAddress(__functionAddress);
  4576.             checkBuffer(params, 4);
  4577.         }
  4578.         nglLightiv(light, pname, memAddress(params), __functionAddress);
  4579.     }
  4580.  
  4581.     // --- [ glLightfv ] ---
  4582.  
  4583.     /** JNI method for {@link #glLightf(int, int, ByteBuffer)} */
  4584.     public static native void nglLightfv(int light, int pname, long params, long __functionAddress);
  4585.  
  4586.     /**
  4587.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4588.      * <p/>
  4589.      * Pointer version of {@link #glLightf(int, int, float)}.
  4590.      *
  4591.      * @param light  the light for which to set the parameter
  4592.      * @param pname  the parameter to set
  4593.      * @param params the parameter value
  4594.      */
  4595.     public static void glLightf(int light, int pname, ByteBuffer params) {
  4596.         long __functionAddress = getInstance().glLightfv;
  4597.         if ( LWJGLUtil.CHECKS ) {
  4598.             checkFunctionAddress(__functionAddress);
  4599.             checkBuffer(params, 4 << 2);
  4600.         }
  4601.         nglLightfv(light, pname, memAddress(params), __functionAddress);
  4602.     }
  4603.  
  4604.     /** Alternative version of: {@link #glLightf(int, int, ByteBuffer)} */
  4605.     public static void glLight(int light, int pname, FloatBuffer params) {
  4606.         long __functionAddress = getInstance().glLightfv;
  4607.         if ( LWJGLUtil.CHECKS ) {
  4608.             checkFunctionAddress(__functionAddress);
  4609.             checkBuffer(params, 4);
  4610.         }
  4611.         nglLightfv(light, pname, memAddress(params), __functionAddress);
  4612.     }
  4613.  
  4614.     // --- [ glLineStipple ] ---
  4615.  
  4616.     /** JNI method for {@link #glLineStipple(int, short)} */
  4617.     public static native void nglLineStipple(int factor, short pattern, long __functionAddress);
  4618.  
  4619.     /**
  4620.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4621.      * <p/>
  4622.      * Defines a line stipple. It determines those fragments that are to be drawn when the line is rasterized. Line stippling may be enabled or disabled using
  4623.      * {@link #glEnable(int)} or {@link #glDisable(int)} with the constant {@link #GL_LINE_STIPPLE}. When disabled, it is as if the line stipple has its default value.
  4624.      *
  4625.      * @param factor  a count that is used to modify the effective line stipple by causing each bit in pattern to be used {@code factor} times. {@code factor} is clamped
  4626.      *                to the range [1, 256].
  4627.      * @param pattern an unsigned short integer whose 16 bits define the stipple pattern
  4628.      */
  4629.     public static void glLineStipple(int factor, short pattern) {
  4630.         long __functionAddress = getInstance().glLineStipple;
  4631.         if ( LWJGLUtil.CHECKS )
  4632.             checkFunctionAddress(__functionAddress);
  4633.         nglLineStipple(factor, pattern, __functionAddress);
  4634.     }
  4635.  
  4636.     // --- [ glLineWidth ] ---
  4637.  
  4638.     /** JNI method for {@link #glLineWidth(float)} */
  4639.     public static native void nglLineWidth(float width, long __functionAddress);
  4640.  
  4641.     /**
  4642.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glLineWidth.xml">OpenGL SDK Reference</a>
  4643.      * <p/>
  4644.      * Sets the width of rasterized line segments. The default width is 1.0.
  4645.      *
  4646.      * @param width the line width
  4647.      */
  4648.     public static void glLineWidth(float width) {
  4649.         long __functionAddress = getInstance().glLineWidth;
  4650.         if ( LWJGLUtil.CHECKS )
  4651.             checkFunctionAddress(__functionAddress);
  4652.         nglLineWidth(width, __functionAddress);
  4653.     }
  4654.  
  4655.     // --- [ glListBase ] ---
  4656.  
  4657.     /** JNI method for {@link #glListBase(int)} */
  4658.     public static native void nglListBase(int base, long __functionAddress);
  4659.  
  4660.     /**
  4661.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4662.      * <p/>
  4663.      * Sets the display list base.
  4664.      *
  4665.      * @param base the display list base offset
  4666.      */
  4667.     public static void glListBase(int base) {
  4668.         long __functionAddress = getInstance().glListBase;
  4669.         if ( LWJGLUtil.CHECKS )
  4670.             checkFunctionAddress(__functionAddress);
  4671.         nglListBase(base, __functionAddress);
  4672.     }
  4673.  
  4674.     // --- [ glLoadMatrixf ] ---
  4675.  
  4676.     /** JNI method for {@link #glLoadMatrixf(ByteBuffer)} */
  4677.     public static native void nglLoadMatrixf(long m, long __functionAddress);
  4678.  
  4679.     /**
  4680.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4681.      * <p/>
  4682.      * Sets the current matrix to a 4 &times; 4 matrix in column-major order.
  4683.      * <p/>
  4684.      * The matrix is stored as 16 consecutive values, i.e. as:
  4685.      * <table border="1" cellspacing="0" cellpadding="2"><tr align="center"><td>a1</td><td>a5</td><td>a9</td><td>a13</td></tr><tr align="center"><td>a2</td><td>a6</td><td>a10</td><td>a14</td></tr><tr align="center"><td>a3</td><td>a7</td><td>a11</td><td>a15</td></tr><tr align="center"><td>a4</td><td>a8</td><td>a12</td><td>a16</td></tr></table>
  4686.      * <p/>
  4687.      * This differs from the standard row-major ordering for matrix elements. If the standard ordering is used, all of the subsequent transformation equations
  4688.      * are transposed, and the columns representing vectors become rows.
  4689.      *
  4690.      * @param m the matrix data
  4691.      */
  4692.     public static void glLoadMatrixf(ByteBuffer m) {
  4693.         long __functionAddress = getInstance().glLoadMatrixf;
  4694.         if ( LWJGLUtil.CHECKS ) {
  4695.             checkFunctionAddress(__functionAddress);
  4696.             checkBuffer(m, 16 << 2);
  4697.         }
  4698.         nglLoadMatrixf(memAddress(m), __functionAddress);
  4699.     }
  4700.  
  4701.     /** Alternative version of: {@link #glLoadMatrixf(ByteBuffer)} */
  4702.     public static void glLoadMatrix(FloatBuffer m) {
  4703.         long __functionAddress = getInstance().glLoadMatrixf;
  4704.         if ( LWJGLUtil.CHECKS ) {
  4705.             checkFunctionAddress(__functionAddress);
  4706.             checkBuffer(m, 16);
  4707.         }
  4708.         nglLoadMatrixf(memAddress(m), __functionAddress);
  4709.     }
  4710.  
  4711.     // --- [ glLoadMatrixd ] ---
  4712.  
  4713.     /** JNI method for {@link #glLoadMatrixd(ByteBuffer)} */
  4714.     public static native void nglLoadMatrixd(long m, long __functionAddress);
  4715.  
  4716.     /**
  4717.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4718.      * <p/>
  4719.      * Double version of {@link #glLoadMatrixf(ByteBuffer)}.
  4720.      *
  4721.      * @param m the matrix data
  4722.      */
  4723.     public static void glLoadMatrixd(ByteBuffer m) {
  4724.         long __functionAddress = getInstance().glLoadMatrixd;
  4725.         if ( LWJGLUtil.CHECKS ) {
  4726.             checkFunctionAddress(__functionAddress);
  4727.             checkBuffer(m, 16 << 3);
  4728.         }
  4729.         nglLoadMatrixd(memAddress(m), __functionAddress);
  4730.     }
  4731.  
  4732.     /** Alternative version of: {@link #glLoadMatrixd(ByteBuffer)} */
  4733.     public static void glLoadMatrix(DoubleBuffer m) {
  4734.         long __functionAddress = getInstance().glLoadMatrixd;
  4735.         if ( LWJGLUtil.CHECKS ) {
  4736.             checkFunctionAddress(__functionAddress);
  4737.             checkBuffer(m, 16);
  4738.         }
  4739.         nglLoadMatrixd(memAddress(m), __functionAddress);
  4740.     }
  4741.  
  4742.     // --- [ glLoadIdentity ] ---
  4743.  
  4744.     /** JNI method for {@link #glLoadIdentity()} */
  4745.     public static native void nglLoadIdentity(long __functionAddress);
  4746.  
  4747.     /**
  4748.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4749.      * <p/>
  4750.      * Sets the current matrix to the identity matrix.
  4751.      * <p/>
  4752.      * Calling this function is equivalent to calling {@link #glLoadMatrixf(ByteBuffer)} with the following matrix:
  4753.      * <table border="1" cellspacing="0" cellpadding="2"><tr align="center"><td>1</td><td>0</td><td>0</td><td>0</td></tr><tr align="center"><td>0</td><td>1</td><td>0</td><td>0</td></tr><tr align="center"><td>0</td><td>0</td><td>1</td><td>0</td></tr><tr align="center"><td>0</td><td>0</td><td>0</td><td>1</td></tr></table>
  4754.      */
  4755.     public static void glLoadIdentity() {
  4756.         long __functionAddress = getInstance().glLoadIdentity;
  4757.         if ( LWJGLUtil.CHECKS )
  4758.             checkFunctionAddress(__functionAddress);
  4759.         nglLoadIdentity(__functionAddress);
  4760.     }
  4761.  
  4762.     // --- [ glLoadName ] ---
  4763.  
  4764.     /** JNI method for {@link #glLoadName(int)} */
  4765.     public static native void nglLoadName(int name, long __functionAddress);
  4766.  
  4767.     /**
  4768.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4769.      * <p/>
  4770.      * Replaces the value on the top of the selection stack with {@code name}.
  4771.      *
  4772.      * @param name the name to load
  4773.      */
  4774.     public static void glLoadName(int name) {
  4775.         long __functionAddress = getInstance().glLoadName;
  4776.         if ( LWJGLUtil.CHECKS )
  4777.             checkFunctionAddress(__functionAddress);
  4778.         nglLoadName(name, __functionAddress);
  4779.     }
  4780.  
  4781.     // --- [ glLogicOp ] ---
  4782.  
  4783.     /** JNI method for {@link #glLogicOp(int)} */
  4784.     public static native void nglLogicOp(int op, long __functionAddress);
  4785.  
  4786.     /**
  4787.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glLogicOp.xml">OpenGL SDK Reference</a>
  4788.      * <p/>
  4789.      * Sets the logical framebuffer operation.
  4790.      *
  4791.      * @param op the operation to set. One of:<p/>{@link #GL_CLEAR}, {@link #GL_AND}, {@link #GL_AND_REVERSE}, {@link #GL_COPY}, {@link #GL_AND_INVERTED}, {@link #GL_NOOP}, {@link #GL_XOR}, {@link #GL_OR}, {@link #GL_NOR}, {@link #GL_EQUIV}, {@link #GL_INVERT}, {@link #GL_OR_REVERSE}, {@link #GL_COPY_INVERTED}, {@link #GL_OR_INVERTED}, {@link #GL_NAND}, {@link #GL_SET}
  4792.      */
  4793.     public static void glLogicOp(int op) {
  4794.         long __functionAddress = getInstance().glLogicOp;
  4795.         if ( LWJGLUtil.CHECKS )
  4796.             checkFunctionAddress(__functionAddress);
  4797.         nglLogicOp(op, __functionAddress);
  4798.     }
  4799.  
  4800.     // --- [ glMap1f ] ---
  4801.  
  4802.     /** JNI method for {@link #glMap1f(int, float, float, int, int, ByteBuffer)} */
  4803.     public static native void nglMap1f(int target, float u1, float u2, int stride, int order, long points, long __functionAddress);
  4804.  
  4805.     /**
  4806.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4807.      * <p/>
  4808.      * Defines a polynomial or rational polynomial mapping to produce vertex, normal, texture coordinates and colors. The values so produced are sent on to
  4809.      * further stages of the GL as if they had been provided directly by the client.
  4810.      *
  4811.      * @param target the evaluator target. One of:<p/>{@link #GL_MAP1_VERTEX_3}, {@link #GL_MAP1_VERTEX_4}, {@link #GL_MAP1_COLOR_4}, {@link #GL_MAP1_NORMAL}, {@link #GL_MAP1_TEXTURE_COORD_1}, {@link #GL_MAP1_TEXTURE_COORD_2}, {@link #GL_MAP1_TEXTURE_COORD_3}, {@link #GL_MAP1_TEXTURE_COORD_4}
  4812.      * @param u1     the first endpoint of the pre-image of the map
  4813.      * @param u2     the second endpoint of the pre-image of the map
  4814.      * @param stride the number of values in each block of storage
  4815.      * @param order  the polynomial order
  4816.      * @param points a set of {@code order} blocks of storage containing control points
  4817.      */
  4818.     public static void glMap1f(int target, float u1, float u2, int stride, int order, ByteBuffer points) {
  4819.         long __functionAddress = getInstance().glMap1f;
  4820.         if ( LWJGLUtil.CHECKS ) {
  4821.             checkFunctionAddress(__functionAddress);
  4822.             checkBuffer(points, (order * stride) << 2);
  4823.         }
  4824.         nglMap1f(target, u1, u2, stride, order, memAddress(points), __functionAddress);
  4825.     }
  4826.  
  4827.     /** Alternative version of: {@link #glMap1f(int, float, float, int, int, ByteBuffer)} */
  4828.     public static void glMap1(int target, float u1, float u2, int stride, int order, FloatBuffer points) {
  4829.         long __functionAddress = getInstance().glMap1f;
  4830.         if ( LWJGLUtil.CHECKS ) {
  4831.             checkFunctionAddress(__functionAddress);
  4832.             checkBuffer(points, order * stride);
  4833.         }
  4834.         nglMap1f(target, u1, u2, stride, order, memAddress(points), __functionAddress);
  4835.     }
  4836.  
  4837.     // --- [ glMap1d ] ---
  4838.  
  4839.     /** JNI method for {@link #glMap1d(int, double, double, int, int, ByteBuffer)} */
  4840.     public static native void nglMap1d(int target, double u1, double u2, int stride, int order, long points, long __functionAddress);
  4841.  
  4842.     /**
  4843.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4844.      * <p/>
  4845.      * Double version of {@link #glMap1f(int, float, float, int, int, ByteBuffer)}.
  4846.      *
  4847.      * @param target the evaluator target
  4848.      * @param u1     the first endpoint of the pre-image of the map
  4849.      * @param u2     the second endpoint of the pre-image of the map
  4850.      * @param stride the number of values in each block of storage
  4851.      * @param order  the polynomial order
  4852.      * @param points a set of {@code order} blocks of storage containing control points
  4853.      */
  4854.     public static void glMap1d(int target, double u1, double u2, int stride, int order, ByteBuffer points) {
  4855.         long __functionAddress = getInstance().glMap1d;
  4856.         if ( LWJGLUtil.CHECKS ) {
  4857.             checkFunctionAddress(__functionAddress);
  4858.             checkBuffer(points, (stride * order) << 3);
  4859.         }
  4860.         nglMap1d(target, u1, u2, stride, order, memAddress(points), __functionAddress);
  4861.     }
  4862.  
  4863.     /** Alternative version of: {@link #glMap1d(int, double, double, int, int, ByteBuffer)} */
  4864.     public static void glMap1(int target, double u1, double u2, int stride, int order, DoubleBuffer points) {
  4865.         long __functionAddress = getInstance().glMap1d;
  4866.         if ( LWJGLUtil.CHECKS ) {
  4867.             checkFunctionAddress(__functionAddress);
  4868.             checkBuffer(points, stride * order);
  4869.         }
  4870.         nglMap1d(target, u1, u2, stride, order, memAddress(points), __functionAddress);
  4871.     }
  4872.  
  4873.     // --- [ glMap2f ] ---
  4874.  
  4875.     /** JNI method for {@link #glMap2f(int, float, float, int, int, float, float, int, int, ByteBuffer)} */
  4876.     public static native void nglMap2f(int target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, long points, long __functionAddress);
  4877.  
  4878.     /**
  4879.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4880.      * <p/>
  4881.      * Bivariate version of {@link #glMap1f(int, float, float, int, int, ByteBuffer)}.
  4882.      *
  4883.      * @param target  the evaluator target
  4884.      * @param u1      the first u-dimension endpoint of the pre-image rectangle of the map
  4885.      * @param u2      the second u-dimension endpoint of the pre-image rectangle of the map
  4886.      * @param ustride the number of values in the u-dimension in each block of storage
  4887.      * @param uorder  the polynomial order in the u-dimension
  4888.      * @param v1      the first v-dimension endpoint of the pre-image rectangle of the map
  4889.      * @param v2      the second v-dimension endpoint of the pre-image rectangle of the map
  4890.      * @param vstride the number of values in the v-dimension in each block of storage
  4891.      * @param vorder  the polynomial order in the v-dimension
  4892.      * @param points  a set of {@code uorder &times; vorder} blocks of storage containing control points
  4893.      */
  4894.     public static void glMap2f(int target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, ByteBuffer points) {
  4895.         long __functionAddress = getInstance().glMap2f;
  4896.         if ( LWJGLUtil.CHECKS ) {
  4897.             checkFunctionAddress(__functionAddress);
  4898.             checkBuffer(points, (ustride * uorder * vstride * vorder) << 2);
  4899.         }
  4900.         nglMap2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, memAddress(points), __functionAddress);
  4901.     }
  4902.  
  4903.     /** Alternative version of: {@link #glMap2f(int, float, float, int, int, float, float, int, int, ByteBuffer)} */
  4904.     public static void glMap2(int target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, FloatBuffer points) {
  4905.         long __functionAddress = getInstance().glMap2f;
  4906.         if ( LWJGLUtil.CHECKS ) {
  4907.             checkFunctionAddress(__functionAddress);
  4908.             checkBuffer(points, ustride * uorder * vstride * vorder);
  4909.         }
  4910.         nglMap2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, memAddress(points), __functionAddress);
  4911.     }
  4912.  
  4913.     // --- [ glMap2d ] ---
  4914.  
  4915.     /** JNI method for {@link #glMap2d(int, double, double, int, int, double, double, int, int, ByteBuffer)} */
  4916.     public static native void nglMap2d(int target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, long points, long __functionAddress);
  4917.  
  4918.     /**
  4919.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4920.      * <p/>
  4921.      * Double version of {@link #glMap2f(int, float, float, int, int, float, float, int, int, ByteBuffer)}.
  4922.      *
  4923.      * @param target  the evaluator target
  4924.      * @param u1      the first u-dimension endpoint of the pre-image rectangle of the map
  4925.      * @param u2      the second u-dimension endpoint of the pre-image rectangle of the map
  4926.      * @param ustride the number of values in the u-dimension in each block of storage
  4927.      * @param uorder  the polynomial order in the u-dimension
  4928.      * @param v1      the first v-dimension endpoint of the pre-image rectangle of the map
  4929.      * @param v2      the second v-dimension endpoint of the pre-image rectangle of the map
  4930.      * @param vstride the number of values in the v-dimension in each block of storage
  4931.      * @param vorder  the polynomial order in the v-dimension
  4932.      * @param points  a set of {@code uorder &times; vorder} blocks of storage containing control points
  4933.      */
  4934.     public static void glMap2d(int target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, ByteBuffer points) {
  4935.         long __functionAddress = getInstance().glMap2d;
  4936.         if ( LWJGLUtil.CHECKS ) {
  4937.             checkFunctionAddress(__functionAddress);
  4938.             checkBuffer(points, (ustride * uorder * vstride * vorder) << 3);
  4939.         }
  4940.         nglMap2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, memAddress(points), __functionAddress);
  4941.     }
  4942.  
  4943.     /** Alternative version of: {@link #glMap2d(int, double, double, int, int, double, double, int, int, ByteBuffer)} */
  4944.     public static void glMap2(int target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, DoubleBuffer points) {
  4945.         long __functionAddress = getInstance().glMap2d;
  4946.         if ( LWJGLUtil.CHECKS ) {
  4947.             checkFunctionAddress(__functionAddress);
  4948.             checkBuffer(points, ustride * uorder * vstride * vorder);
  4949.         }
  4950.         nglMap2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, memAddress(points), __functionAddress);
  4951.     }
  4952.  
  4953.     // --- [ glMapGrid1f ] ---
  4954.  
  4955.     /** JNI method for {@link #glMapGrid1f(int, float, float)} */
  4956.     public static native void nglMapGrid1f(int n, float u1, float u2, long __functionAddress);
  4957.  
  4958.     /**
  4959.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4960.      * <p/>
  4961.      * Defines a one-dimensional grid in the map evaluator domain.
  4962.      *
  4963.      * @param n  the number of partitions of the interval
  4964.      * @param u1 the first interval endpoint
  4965.      * @param u2 the second interval endpoint
  4966.      */
  4967.     public static void glMapGrid1f(int n, float u1, float u2) {
  4968.         long __functionAddress = getInstance().glMapGrid1f;
  4969.         if ( LWJGLUtil.CHECKS )
  4970.             checkFunctionAddress(__functionAddress);
  4971.         nglMapGrid1f(n, u1, u2, __functionAddress);
  4972.     }
  4973.  
  4974.     // --- [ glMapGrid1d ] ---
  4975.  
  4976.     /** JNI method for {@link #glMapGrid1d(int, double, double)} */
  4977.     public static native void nglMapGrid1d(int n, double u1, double u2, long __functionAddress);
  4978.  
  4979.     /**
  4980.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  4981.      * <p/>
  4982.      * Double version of {@link #glMapGrid1f(int, float, float)}.
  4983.      *
  4984.      * @param n  the number of partitions of the interval
  4985.      * @param u1 the first interval endpoint
  4986.      * @param u2 the second interval endpoint
  4987.      */
  4988.     public static void glMapGrid1d(int n, double u1, double u2) {
  4989.         long __functionAddress = getInstance().glMapGrid1d;
  4990.         if ( LWJGLUtil.CHECKS )
  4991.             checkFunctionAddress(__functionAddress);
  4992.         nglMapGrid1d(n, u1, u2, __functionAddress);
  4993.     }
  4994.  
  4995.     // --- [ glMapGrid2f ] ---
  4996.  
  4997.     /** JNI method for {@link #glMapGrid2f(int, float, float, int, float, float)} */
  4998.     public static native void nglMapGrid2f(int un, float u1, float u2, int vn, float v1, float v2, long __functionAddress);
  4999.  
  5000.     /**
  5001.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5002.      * <p/>
  5003.      * Defines a two-dimensional grid in the map evaluator domain.
  5004.      *
  5005.      * @param un the number of partitions of the interval in the u-dimension
  5006.      * @param u1 the first u-dimension interval endpoint
  5007.      * @param u2 the second u-dimension interval endpoint
  5008.      * @param vn the number of partitions of the interval in the v-dimension
  5009.      * @param v1 the first v-dimension interval endpoint
  5010.      * @param v2 the second v-dimension interval endpoint
  5011.      */
  5012.     public static void glMapGrid2f(int un, float u1, float u2, int vn, float v1, float v2) {
  5013.         long __functionAddress = getInstance().glMapGrid2f;
  5014.         if ( LWJGLUtil.CHECKS )
  5015.             checkFunctionAddress(__functionAddress);
  5016.         nglMapGrid2f(un, u1, u2, vn, v1, v2, __functionAddress);
  5017.     }
  5018.  
  5019.     // --- [ glMapGrid2d ] ---
  5020.  
  5021.     /** JNI method for {@link #glMapGrid2d(int, double, double, int, double, double)} */
  5022.     public static native void nglMapGrid2d(int un, double u1, double u2, int vn, double v1, double v2, long __functionAddress);
  5023.  
  5024.     /**
  5025.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5026.      * <p/>
  5027.      * Double version of {@link #glMapGrid2f(int, float, float, int, float, float)}.
  5028.      *
  5029.      * @param un the number of partitions of the interval in the u-dimension
  5030.      * @param u1 the first u-dimension interval endpoint
  5031.      * @param u2 the second u-dimension interval endpoint
  5032.      * @param vn the number of partitions of the interval in the v-dimension
  5033.      * @param v1 the first v-dimension interval endpoint
  5034.      * @param v2 the second v-dimension interval endpoint
  5035.      */
  5036.     public static void glMapGrid2d(int un, double u1, double u2, int vn, double v1, double v2) {
  5037.         long __functionAddress = getInstance().glMapGrid2d;
  5038.         if ( LWJGLUtil.CHECKS )
  5039.             checkFunctionAddress(__functionAddress);
  5040.         nglMapGrid2d(un, u1, u2, vn, v1, v2, __functionAddress);
  5041.     }
  5042.  
  5043.     // --- [ glMateriali ] ---
  5044.  
  5045.     /** JNI method for {@link #glMateriali(int, int, int)} */
  5046.     public static native void nglMateriali(int face, int pname, int param, long __functionAddress);
  5047.  
  5048.     /**
  5049.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5050.      * <p/>
  5051.      * Sets the integer value of a material parameter.
  5052.      *
  5053.      * @param face  the material face for which to set the parameter. One of:<p/>{@link #GL_FRONT}, {@link #GL_BACK}, {@link #GL_FRONT_AND_BACK}
  5054.      * @param pname the parameter to set. Must be:<p/>{@link #GL_SHININESS}
  5055.      * @param param the parameter value
  5056.      */
  5057.     public static void glMateriali(int face, int pname, int param) {
  5058.         long __functionAddress = getInstance().glMateriali;
  5059.         if ( LWJGLUtil.CHECKS )
  5060.             checkFunctionAddress(__functionAddress);
  5061.         nglMateriali(face, pname, param, __functionAddress);
  5062.     }
  5063.  
  5064.     // --- [ glMaterialf ] ---
  5065.  
  5066.     /** JNI method for {@link #glMaterialf(int, int, float)} */
  5067.     public static native void nglMaterialf(int face, int pname, float param, long __functionAddress);
  5068.  
  5069.     /**
  5070.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5071.      * <p/>
  5072.      * Float version of {@link #glMateriali(int, int, int)}.
  5073.      *
  5074.      * @param face  the material face for which to set the parameter
  5075.      * @param pname the parameter to set
  5076.      * @param param the parameter value
  5077.      */
  5078.     public static void glMaterialf(int face, int pname, float param) {
  5079.         long __functionAddress = getInstance().glMaterialf;
  5080.         if ( LWJGLUtil.CHECKS )
  5081.             checkFunctionAddress(__functionAddress);
  5082.         nglMaterialf(face, pname, param, __functionAddress);
  5083.     }
  5084.  
  5085.     // --- [ glMaterialiv ] ---
  5086.  
  5087.     /** JNI method for {@link #glMateriali(int, int, ByteBuffer)} */
  5088.     public static native void nglMaterialiv(int face, int pname, long params, long __functionAddress);
  5089.  
  5090.     /**
  5091.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5092.      * <p/>
  5093.      * Pointer version of {@link #glMateriali(int, int, int)}.
  5094.      *
  5095.      * @param face   the material face for which to set the parameter
  5096.      * @param pname  the parameter to set. One of:<p/>{@link #GL_AMBIENT}, {@link #GL_DIFFUSE}, {@link #GL_AMBIENT_AND_DIFFUSE}, {@link #GL_SPECULAR}, {@link #GL_EMISSION}
  5097.      * @param params the parameter value
  5098.      */
  5099.     public static void glMateriali(int face, int pname, ByteBuffer params) {
  5100.         long __functionAddress = getInstance().glMaterialiv;
  5101.         if ( LWJGLUtil.CHECKS ) {
  5102.             checkFunctionAddress(__functionAddress);
  5103.             checkBuffer(params, 4 << 2);
  5104.         }
  5105.         nglMaterialiv(face, pname, memAddress(params), __functionAddress);
  5106.     }
  5107.  
  5108.     /** Alternative version of: {@link #glMateriali(int, int, ByteBuffer)} */
  5109.     public static void glMaterial(int face, int pname, IntBuffer params) {
  5110.         long __functionAddress = getInstance().glMaterialiv;
  5111.         if ( LWJGLUtil.CHECKS ) {
  5112.             checkFunctionAddress(__functionAddress);
  5113.             checkBuffer(params, 4);
  5114.         }
  5115.         nglMaterialiv(face, pname, memAddress(params), __functionAddress);
  5116.     }
  5117.  
  5118.     // --- [ glMaterialfv ] ---
  5119.  
  5120.     /** JNI method for {@link #glMaterialf(int, int, ByteBuffer)} */
  5121.     public static native void nglMaterialfv(int face, int pname, long params, long __functionAddress);
  5122.  
  5123.     /**
  5124.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5125.      * <p/>
  5126.      * Pointer version of {@link #glMaterialf(int, int, float)}.
  5127.      *
  5128.      * @param face   the material face for which to set the parameter
  5129.      * @param pname  the parameter to set
  5130.      * @param params the parameter value
  5131.      */
  5132.     public static void glMaterialf(int face, int pname, ByteBuffer params) {
  5133.         long __functionAddress = getInstance().glMaterialfv;
  5134.         if ( LWJGLUtil.CHECKS ) {
  5135.             checkFunctionAddress(__functionAddress);
  5136.             checkBuffer(params, 4 << 2);
  5137.         }
  5138.         nglMaterialfv(face, pname, memAddress(params), __functionAddress);
  5139.     }
  5140.  
  5141.     /** Alternative version of: {@link #glMaterialf(int, int, ByteBuffer)} */
  5142.     public static void glMaterial(int face, int pname, FloatBuffer params) {
  5143.         long __functionAddress = getInstance().glMaterialfv;
  5144.         if ( LWJGLUtil.CHECKS ) {
  5145.             checkFunctionAddress(__functionAddress);
  5146.             checkBuffer(params, 4);
  5147.         }
  5148.         nglMaterialfv(face, pname, memAddress(params), __functionAddress);
  5149.     }
  5150.  
  5151.     // --- [ glMatrixMode ] ---
  5152.  
  5153.     /** JNI method for {@link #glMatrixMode(int)} */
  5154.     public static native void nglMatrixMode(int mode, long __functionAddress);
  5155.  
  5156.     /**
  5157.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5158.      * <p/>
  5159.      * Set the current matrix mode.
  5160.      *
  5161.      * @param mode the matrix mode. One of:<p/>{@link #GL_MODELVIEW}, {@link #GL_PROJECTION}, {@link #GL_TEXTURE}, {@link #GL_COLOR}
  5162.      */
  5163.     public static void glMatrixMode(int mode) {
  5164.         long __functionAddress = getInstance().glMatrixMode;
  5165.         if ( LWJGLUtil.CHECKS )
  5166.             checkFunctionAddress(__functionAddress);
  5167.         nglMatrixMode(mode, __functionAddress);
  5168.     }
  5169.  
  5170.     // --- [ glMultMatrixf ] ---
  5171.  
  5172.     /** JNI method for {@link #glMultMatrixf(ByteBuffer)} */
  5173.     public static native void nglMultMatrixf(long m, long __functionAddress);
  5174.  
  5175.     /**
  5176.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5177.      * <p/>
  5178.      * Multiplies the current matrix with a 4 &times; 4 matrix in column-major order. See {@link #glLoadMatrixf(ByteBuffer)} for details.
  5179.      *
  5180.      * @param m the matrix data
  5181.      */
  5182.     public static void glMultMatrixf(ByteBuffer m) {
  5183.         long __functionAddress = getInstance().glMultMatrixf;
  5184.         if ( LWJGLUtil.CHECKS ) {
  5185.             checkFunctionAddress(__functionAddress);
  5186.             checkBuffer(m, 16 << 2);
  5187.         }
  5188.         nglMultMatrixf(memAddress(m), __functionAddress);
  5189.     }
  5190.  
  5191.     /** Alternative version of: {@link #glMultMatrixf(ByteBuffer)} */
  5192.     public static void glMultMatrix(FloatBuffer m) {
  5193.         long __functionAddress = getInstance().glMultMatrixf;
  5194.         if ( LWJGLUtil.CHECKS ) {
  5195.             checkFunctionAddress(__functionAddress);
  5196.             checkBuffer(m, 16);
  5197.         }
  5198.         nglMultMatrixf(memAddress(m), __functionAddress);
  5199.     }
  5200.  
  5201.     // --- [ glMultMatrixd ] ---
  5202.  
  5203.     /** JNI method for {@link #glMultMatrixd(ByteBuffer)} */
  5204.     public static native void nglMultMatrixd(long m, long __functionAddress);
  5205.  
  5206.     /**
  5207.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5208.      * <p/>
  5209.      * Double version of {@link #glMultMatrixf(ByteBuffer)}.
  5210.      *
  5211.      * @param m the matrix data
  5212.      */
  5213.     public static void glMultMatrixd(ByteBuffer m) {
  5214.         long __functionAddress = getInstance().glMultMatrixd;
  5215.         if ( LWJGLUtil.CHECKS ) {
  5216.             checkFunctionAddress(__functionAddress);
  5217.             checkBuffer(m, 16 << 3);
  5218.         }
  5219.         nglMultMatrixd(memAddress(m), __functionAddress);
  5220.     }
  5221.  
  5222.     /** Alternative version of: {@link #glMultMatrixd(ByteBuffer)} */
  5223.     public static void glMultMatrix(DoubleBuffer m) {
  5224.         long __functionAddress = getInstance().glMultMatrixd;
  5225.         if ( LWJGLUtil.CHECKS ) {
  5226.             checkFunctionAddress(__functionAddress);
  5227.             checkBuffer(m, 16);
  5228.         }
  5229.         nglMultMatrixd(memAddress(m), __functionAddress);
  5230.     }
  5231.  
  5232.     // --- [ glFrustum ] ---
  5233.  
  5234.     /** JNI method for {@link #glFrustum(double, double, double, double, double, double)} */
  5235.     public static native void nglFrustum(double l, double r, double b, double t, double n, double f, long __functionAddress);
  5236.  
  5237.     /**
  5238.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5239.      * <p/>
  5240.      * Manipulates the current matrix with a matrix that produces perspective projection, in such a way that the coordinates {@code (lb &ndash; n)}<sup>T</sup>
  5241.      * and <code>(rt &ndash; n)<sup>T</sup></code> specify the points on the near clipping plane that are mapped to the lower left and upper right corners of the
  5242.      * window, respectively (assuming that the eye is located at <code>(0 0 0)<sup>T</sup></code>). {@code f} gives the distance from the eye to the far clipping
  5243.      * plane.
  5244.      * <p/>
  5245.      * Calling this function is equivalent to calling {@link #glMultMatrixf(ByteBuffer)} with the following matrix:
  5246.      * <table border="1" cellspacing="0" cellpadding="2"><tr align="center"><td>2n / (r - l)</td><td>0</td><td>(r + l) / (r - l)</td><td>0</td></tr><tr align="center"><td>0</td><td>2n / (t - b)</td><td>(t + b) / (t - b)</td><td>0</td></tr><tr align="center"><td>0</td><td>0</td><td>- (f + n) / (f - n)</td><td>- (2fn) / (f - n)</td></tr><tr align="center"><td>0</td><td>0</td><td>-1</td><td>0</td></tr></table>
  5247.      *
  5248.      * @param l the left frustum plane
  5249.      * @param r the right frustum plane
  5250.      * @param b the bottom frustum plane
  5251.      * @param t the top frustum plane
  5252.      * @param n the near frustum plane
  5253.      * @param f the far frustum plane
  5254.      */
  5255.     public static void glFrustum(double l, double r, double b, double t, double n, double f) {
  5256.         long __functionAddress = getInstance().glFrustum;
  5257.         if ( LWJGLUtil.CHECKS )
  5258.             checkFunctionAddress(__functionAddress);
  5259.         nglFrustum(l, r, b, t, n, f, __functionAddress);
  5260.     }
  5261.  
  5262.     // --- [ glNewList ] ---
  5263.  
  5264.     /** JNI method for {@link #glNewList(int, int)} */
  5265.     public static native void nglNewList(int n, int mode, long __functionAddress);
  5266.  
  5267.     /**
  5268.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5269.      * <p/>
  5270.      * Begins the definition of a display list.
  5271.      *
  5272.      * @param n    a positive integer to which the display list that follows is assigned
  5273.      * @param mode a symbolic constant that controls the behavior of the GL during display list creation. One of:<p/>{@link #GL_COMPILE}, {@link #GL_COMPILE_AND_EXECUTE}
  5274.      */
  5275.     public static void glNewList(int n, int mode) {
  5276.         long __functionAddress = getInstance().glNewList;
  5277.         if ( LWJGLUtil.CHECKS )
  5278.             checkFunctionAddress(__functionAddress);
  5279.         nglNewList(n, mode, __functionAddress);
  5280.     }
  5281.  
  5282.     // --- [ glEndList ] ---
  5283.  
  5284.     /** JNI method for {@link #glEndList()} */
  5285.     public static native void nglEndList(long __functionAddress);
  5286.  
  5287.     /**
  5288.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5289.      * <p/>
  5290.      * Ends the definition of GL commands to be placed in a display list. It is only when {@code EndList} occurs that the specified display list is actually
  5291.      * associated with the index indicated with {@link #glNewList(int, int)}.
  5292.      */
  5293.     public static void glEndList() {
  5294.         long __functionAddress = getInstance().glEndList;
  5295.         if ( LWJGLUtil.CHECKS )
  5296.             checkFunctionAddress(__functionAddress);
  5297.         nglEndList(__functionAddress);
  5298.     }
  5299.  
  5300.     // --- [ glNormal3f ] ---
  5301.  
  5302.     /** JNI method for {@link #glNormal3f(float, float, float)} */
  5303.     public static native void nglNormal3f(float nx, float ny, float nz, long __functionAddress);
  5304.  
  5305.     /**
  5306.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5307.      * <p/>
  5308.      * Sets the current normal.
  5309.      *
  5310.      * @param nx the x coordinate of the current normal
  5311.      * @param ny the y coordinate of the current normal
  5312.      * @param nz the z coordinate of the current normal
  5313.      */
  5314.     public static void glNormal3f(float nx, float ny, float nz) {
  5315.         long __functionAddress = getInstance().glNormal3f;
  5316.         if ( LWJGLUtil.CHECKS )
  5317.             checkFunctionAddress(__functionAddress);
  5318.         nglNormal3f(nx, ny, nz, __functionAddress);
  5319.     }
  5320.  
  5321.     // --- [ glNormal3b ] ---
  5322.  
  5323.     /** JNI method for {@link #glNormal3b(byte, byte, byte)} */
  5324.     public static native void nglNormal3b(byte nx, byte ny, byte nz, long __functionAddress);
  5325.  
  5326.     /**
  5327.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5328.      * <p/>
  5329.      * Byte version of {@link #glNormal3f(float, float, float)}.
  5330.      *
  5331.      * @param nx the x coordinate of the current normal
  5332.      * @param ny the y coordinate of the current normal
  5333.      * @param nz the z coordinate of the current normal
  5334.      */
  5335.     public static void glNormal3b(byte nx, byte ny, byte nz) {
  5336.         long __functionAddress = getInstance().glNormal3b;
  5337.         if ( LWJGLUtil.CHECKS )
  5338.             checkFunctionAddress(__functionAddress);
  5339.         nglNormal3b(nx, ny, nz, __functionAddress);
  5340.     }
  5341.  
  5342.     // --- [ glNormal3s ] ---
  5343.  
  5344.     /** JNI method for {@link #glNormal3s(short, short, short)} */
  5345.     public static native void nglNormal3s(short nx, short ny, short nz, long __functionAddress);
  5346.  
  5347.     /**
  5348.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5349.      * <p/>
  5350.      * Short version of {@link #glNormal3f(float, float, float)}.
  5351.      *
  5352.      * @param nx the x coordinate of the current normal
  5353.      * @param ny the y coordinate of the current normal
  5354.      * @param nz the z coordinate of the current normal
  5355.      */
  5356.     public static void glNormal3s(short nx, short ny, short nz) {
  5357.         long __functionAddress = getInstance().glNormal3s;
  5358.         if ( LWJGLUtil.CHECKS )
  5359.             checkFunctionAddress(__functionAddress);
  5360.         nglNormal3s(nx, ny, nz, __functionAddress);
  5361.     }
  5362.  
  5363.     // --- [ glNormal3i ] ---
  5364.  
  5365.     /** JNI method for {@link #glNormal3i(int, int, int)} */
  5366.     public static native void nglNormal3i(int nx, int ny, int nz, long __functionAddress);
  5367.  
  5368.     /**
  5369.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5370.      * <p/>
  5371.      * Integer version of {@link #glNormal3f(float, float, float)}.
  5372.      *
  5373.      * @param nx the x coordinate of the current normal
  5374.      * @param ny the y coordinate of the current normal
  5375.      * @param nz the z coordinate of the current normal
  5376.      */
  5377.     public static void glNormal3i(int nx, int ny, int nz) {
  5378.         long __functionAddress = getInstance().glNormal3i;
  5379.         if ( LWJGLUtil.CHECKS )
  5380.             checkFunctionAddress(__functionAddress);
  5381.         nglNormal3i(nx, ny, nz, __functionAddress);
  5382.     }
  5383.  
  5384.     // --- [ glNormal3d ] ---
  5385.  
  5386.     /** JNI method for {@link #glNormal3d(double, double, double)} */
  5387.     public static native void nglNormal3d(double nx, double ny, double nz, long __functionAddress);
  5388.  
  5389.     /**
  5390.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5391.      * <p/>
  5392.      * Double version of {@link #glNormal3f(float, float, float)}.
  5393.      *
  5394.      * @param nx the x coordinate of the current normal
  5395.      * @param ny the y coordinate of the current normal
  5396.      * @param nz the z coordinate of the current normal
  5397.      */
  5398.     public static void glNormal3d(double nx, double ny, double nz) {
  5399.         long __functionAddress = getInstance().glNormal3d;
  5400.         if ( LWJGLUtil.CHECKS )
  5401.             checkFunctionAddress(__functionAddress);
  5402.         nglNormal3d(nx, ny, nz, __functionAddress);
  5403.     }
  5404.  
  5405.     // --- [ glNormal3fv ] ---
  5406.  
  5407.     /** JNI method for {@link #glNormal3f(ByteBuffer)} */
  5408.     public static native void nglNormal3fv(long v, long __functionAddress);
  5409.  
  5410.     /**
  5411.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5412.      * <p/>
  5413.      * Pointer version of {@link #glNormal3f(float, float, float)}.
  5414.      *
  5415.      * @param v the normal buffer
  5416.      */
  5417.     public static void glNormal3f(ByteBuffer v) {
  5418.         long __functionAddress = getInstance().glNormal3fv;
  5419.         if ( LWJGLUtil.CHECKS ) {
  5420.             checkFunctionAddress(__functionAddress);
  5421.             checkBuffer(v, 3 << 2);
  5422.         }
  5423.         nglNormal3fv(memAddress(v), __functionAddress);
  5424.     }
  5425.  
  5426.     /** Alternative version of: {@link #glNormal3f(ByteBuffer)} */
  5427.     public static void glNormal3(FloatBuffer v) {
  5428.         long __functionAddress = getInstance().glNormal3fv;
  5429.         if ( LWJGLUtil.CHECKS ) {
  5430.             checkFunctionAddress(__functionAddress);
  5431.             checkBuffer(v, 3);
  5432.         }
  5433.         nglNormal3fv(memAddress(v), __functionAddress);
  5434.     }
  5435.  
  5436.     // --- [ glNormal3bv ] ---
  5437.  
  5438.     /** JNI method for {@link #glNormal3b(ByteBuffer)} */
  5439.     public static native void nglNormal3bv(long v, long __functionAddress);
  5440.  
  5441.     /**
  5442.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5443.      * <p/>
  5444.      * Pointer version of {@link #glNormal3b(byte, byte, byte)}.
  5445.      *
  5446.      * @param v the normal buffer
  5447.      */
  5448.     public static void glNormal3b(ByteBuffer v) {
  5449.         long __functionAddress = getInstance().glNormal3bv;
  5450.         if ( LWJGLUtil.CHECKS ) {
  5451.             checkFunctionAddress(__functionAddress);
  5452.             checkBuffer(v, 3 << 0);
  5453.         }
  5454.         nglNormal3bv(memAddress(v), __functionAddress);
  5455.     }
  5456.  
  5457.     // --- [ glNormal3sv ] ---
  5458.  
  5459.     /** JNI method for {@link #glNormal3s(ByteBuffer)} */
  5460.     public static native void nglNormal3sv(long v, long __functionAddress);
  5461.  
  5462.     /**
  5463.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5464.      * <p/>
  5465.      * Pointer version of {@link #glNormal3s(short, short, short)}.
  5466.      *
  5467.      * @param v the normal buffer
  5468.      */
  5469.     public static void glNormal3s(ByteBuffer v) {
  5470.         long __functionAddress = getInstance().glNormal3sv;
  5471.         if ( LWJGLUtil.CHECKS ) {
  5472.             checkFunctionAddress(__functionAddress);
  5473.             checkBuffer(v, 3 << 1);
  5474.         }
  5475.         nglNormal3sv(memAddress(v), __functionAddress);
  5476.     }
  5477.  
  5478.     /** Alternative version of: {@link #glNormal3s(ByteBuffer)} */
  5479.     public static void glNormal3(ShortBuffer v) {
  5480.         long __functionAddress = getInstance().glNormal3sv;
  5481.         if ( LWJGLUtil.CHECKS ) {
  5482.             checkFunctionAddress(__functionAddress);
  5483.             checkBuffer(v, 3);
  5484.         }
  5485.         nglNormal3sv(memAddress(v), __functionAddress);
  5486.     }
  5487.  
  5488.     // --- [ glNormal3iv ] ---
  5489.  
  5490.     /** JNI method for {@link #glNormal3i(ByteBuffer)} */
  5491.     public static native void nglNormal3iv(long v, long __functionAddress);
  5492.  
  5493.     /**
  5494.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5495.      * <p/>
  5496.      * Pointer version of {@link #glNormal3i(int, int, int)}.
  5497.      *
  5498.      * @param v the normal buffer
  5499.      */
  5500.     public static void glNormal3i(ByteBuffer v) {
  5501.         long __functionAddress = getInstance().glNormal3iv;
  5502.         if ( LWJGLUtil.CHECKS ) {
  5503.             checkFunctionAddress(__functionAddress);
  5504.             checkBuffer(v, 3 << 2);
  5505.         }
  5506.         nglNormal3iv(memAddress(v), __functionAddress);
  5507.     }
  5508.  
  5509.     /** Alternative version of: {@link #glNormal3i(ByteBuffer)} */
  5510.     public static void glNormal3(IntBuffer v) {
  5511.         long __functionAddress = getInstance().glNormal3iv;
  5512.         if ( LWJGLUtil.CHECKS ) {
  5513.             checkFunctionAddress(__functionAddress);
  5514.             checkBuffer(v, 3);
  5515.         }
  5516.         nglNormal3iv(memAddress(v), __functionAddress);
  5517.     }
  5518.  
  5519.     // --- [ glNormal3dv ] ---
  5520.  
  5521.     /** JNI method for {@link #glNormal3d(ByteBuffer)} */
  5522.     public static native void nglNormal3dv(long v, long __functionAddress);
  5523.  
  5524.     /**
  5525.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5526.      * <p/>
  5527.      * Pointer version of {@link #glNormal3d(double, double, double)}.
  5528.      *
  5529.      * @param v the normal buffer
  5530.      */
  5531.     public static void glNormal3d(ByteBuffer v) {
  5532.         long __functionAddress = getInstance().glNormal3dv;
  5533.         if ( LWJGLUtil.CHECKS ) {
  5534.             checkFunctionAddress(__functionAddress);
  5535.             checkBuffer(v, 3 << 3);
  5536.         }
  5537.         nglNormal3dv(memAddress(v), __functionAddress);
  5538.     }
  5539.  
  5540.     /** Alternative version of: {@link #glNormal3d(ByteBuffer)} */
  5541.     public static void glNormal3(DoubleBuffer v) {
  5542.         long __functionAddress = getInstance().glNormal3dv;
  5543.         if ( LWJGLUtil.CHECKS ) {
  5544.             checkFunctionAddress(__functionAddress);
  5545.             checkBuffer(v, 3);
  5546.         }
  5547.         nglNormal3dv(memAddress(v), __functionAddress);
  5548.     }
  5549.  
  5550.     // --- [ glNormalPointer ] ---
  5551.  
  5552.     /** JNI method for {@link #glNormalPointer(int, int, ByteBuffer)} */
  5553.     public static native void nglNormalPointer(int type, int stride, long pointer, long __functionAddress);
  5554.  
  5555.     /**
  5556.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5557.      * <p/>
  5558.      * Specifies the location and organization of a normal array.
  5559.      *
  5560.      * @param type    the data type of the values stored in the array. One of:<p/>{@link #GL_BYTE}, {@link #GL_SHORT}, {@link #GL_INT}, {@link GL30#GL_HALF}, {@link #GL_FLOAT}, {@link #GL_DOUBLE}, {@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV}, {@link GL12#GL_INT_2_10_10_10_REV}
  5561.      * @param stride  the vertex stride in bytes. If specified as zero, then array elements are stored sequentially
  5562.      * @param pointer the normal array data
  5563.      */
  5564.     public static void glNormalPointer(int type, int stride, ByteBuffer pointer) {
  5565.         long __functionAddress = getInstance().glNormalPointer;
  5566.         if ( LWJGLUtil.CHECKS ) {
  5567.             checkFunctionAddress(__functionAddress);
  5568.             GLChecks.ensureBufferObject(0x8894, false);
  5569.         }
  5570.         nglNormalPointer(type, stride, memAddress(pointer), __functionAddress);
  5571.     }
  5572.  
  5573.     /** Buffer object offset version of: {@link #glNormalPointer(int, int, ByteBuffer)} */
  5574.     public static void glNormalPointer(int type, int stride, long pointerOffset) {
  5575.         long __functionAddress = getInstance().glNormalPointer;
  5576.         if ( LWJGLUtil.CHECKS ) {
  5577.             checkFunctionAddress(__functionAddress);
  5578.             GLChecks.ensureBufferObject(0x8894, true);
  5579.         }
  5580.         nglNormalPointer(type, stride, pointerOffset, __functionAddress);
  5581.     }
  5582.  
  5583.     /** GL_BYTE version of: {@link #glNormalPointer(int, int, ByteBuffer)} */
  5584.     public static void glNormalPointer(int stride, ByteBuffer pointer) {
  5585.         long __functionAddress = getInstance().glNormalPointer;
  5586.         if ( LWJGLUtil.CHECKS ) {
  5587.             checkFunctionAddress(__functionAddress);
  5588.             GLChecks.ensureBufferObject(0x8894, false);
  5589.         }
  5590.         nglNormalPointer(GL11.GL_BYTE, stride, memAddress(pointer), __functionAddress);
  5591.     }
  5592.  
  5593.     /** GL_SHORT version of: {@link #glNormalPointer(int, int, ByteBuffer)} */
  5594.     public static void glNormalPointer(int stride, ShortBuffer pointer) {
  5595.         long __functionAddress = getInstance().glNormalPointer;
  5596.         if ( LWJGLUtil.CHECKS ) {
  5597.             checkFunctionAddress(__functionAddress);
  5598.             GLChecks.ensureBufferObject(0x8894, false);
  5599.         }
  5600.         nglNormalPointer(GL11.GL_SHORT, stride, memAddress(pointer), __functionAddress);
  5601.     }
  5602.  
  5603.     /** GL_FLOAT version of: {@link #glNormalPointer(int, int, ByteBuffer)} */
  5604.     public static void glNormalPointer(int stride, FloatBuffer pointer) {
  5605.         long __functionAddress = getInstance().glNormalPointer;
  5606.         if ( LWJGLUtil.CHECKS ) {
  5607.             checkFunctionAddress(__functionAddress);
  5608.             GLChecks.ensureBufferObject(0x8894, false);
  5609.         }
  5610.         nglNormalPointer(GL11.GL_FLOAT, stride, memAddress(pointer), __functionAddress);
  5611.     }
  5612.  
  5613.     // --- [ glOrtho ] ---
  5614.  
  5615.     /** JNI method for {@link #glOrtho(double, double, double, double, double, double)} */
  5616.     public static native void nglOrtho(double l, double r, double b, double t, double n, double f, long __functionAddress);
  5617.  
  5618.     /**
  5619.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5620.      * <p/>
  5621.      * Manipulates the current matrix with a matrix that produces parallel projection, in such a way that the coordinates <code>(lb &ndash; n)<sup>T</sup></code>
  5622.      * and <code>(rt &ndash; n)<sup>T</sup></code> specify the points on the near clipping plane that are mapped to the lower left and upper right corners of the
  5623.      * window, respectively (assuming that the eye is located at <code>(0 0 0)<sup>T</sup></code>). {@code f} gives the distance from the eye to the far clipping
  5624.      * plane.
  5625.      * <p/>
  5626.      * Calling this function is equivalent to calling {@link #glMultMatrixf(ByteBuffer)} with the following matrix:
  5627.      * <table border="1" cellspacing="0" cellpadding="2"><tr align="center"><td>2 / (r - l)</td><td>0</td><td>0</td><td>- (r + l) / (r - l)</td></tr><tr align="center"><td>0</td><td>2 / (t - b)</td><td>0</td><td>- (t + b) / (t - b)</td></tr><tr align="center"><td>0</td><td>0</td><td>- 2 / (f - n)</td><td>- (f + n) / (f - n)</td></tr><tr align="center"><td>0</td><td>0</td><td>0</td><td>1</td></tr></table>
  5628.      *
  5629.      * @param l the left frustum plane
  5630.      * @param r the right frustum plane
  5631.      * @param b the bottom frustum plane
  5632.      * @param t the top frustum plane
  5633.      * @param n the near frustum plane
  5634.      * @param f the far frustum plane
  5635.      */
  5636.     public static void glOrtho(double l, double r, double b, double t, double n, double f) {
  5637.         long __functionAddress = getInstance().glOrtho;
  5638.         if ( LWJGLUtil.CHECKS )
  5639.             checkFunctionAddress(__functionAddress);
  5640.         nglOrtho(l, r, b, t, n, f, __functionAddress);
  5641.     }
  5642.  
  5643.     // --- [ glPassThrough ] ---
  5644.  
  5645.     /** JNI method for {@link #glPassThrough(float)} */
  5646.     public static native void nglPassThrough(float token, long __functionAddress);
  5647.  
  5648.     /**
  5649.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5650.      * <p/>
  5651.      * Inserts a marker when the GL is in feeback mode. {@code token} is returned as if it were a primitive; it is indicated with its own unique identifying
  5652.      * value. The ordering of any {@code PassThrough} commands with respect to primitive specification is maintained by feedback. {@code PassThrough} may
  5653.      * not occur between {@link #glBegin(int)} and {@link #glEnd()}.
  5654.      *
  5655.      * @param token the marker value to insert
  5656.      */
  5657.     public static void glPassThrough(float token) {
  5658.         long __functionAddress = getInstance().glPassThrough;
  5659.         if ( LWJGLUtil.CHECKS )
  5660.             checkFunctionAddress(__functionAddress);
  5661.         nglPassThrough(token, __functionAddress);
  5662.     }
  5663.  
  5664.     // --- [ glPixelMapfv ] ---
  5665.  
  5666.     /** JNI method for {@link #glPixelMapf(int, int, ByteBuffer)} */
  5667.     public static native void nglPixelMapfv(int map, int size, long values, long __functionAddress);
  5668.  
  5669.     /**
  5670.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5671.      * <p/>
  5672.      * Sets a pixel map lookup table.
  5673.      *
  5674.      * @param map    the map to set. One of:<p/>{@link #GL_PIXEL_MAP_I_TO_I}, {@link #GL_PIXEL_MAP_S_TO_S}, {@link #GL_PIXEL_MAP_I_TO_R}, {@link #GL_PIXEL_MAP_I_TO_G}, {@link #GL_PIXEL_MAP_I_TO_B}, {@link #GL_PIXEL_MAP_I_TO_A}, {@link #GL_PIXEL_MAP_R_TO_R}, {@link #GL_PIXEL_MAP_G_TO_G}, {@link #GL_PIXEL_MAP_B_TO_B}, {@link #GL_PIXEL_MAP_A_TO_A}
  5675.      * @param size   the map size
  5676.      * @param values the map values
  5677.      */
  5678.     public static void glPixelMapf(int map, int size, ByteBuffer values) {
  5679.         long __functionAddress = getInstance().glPixelMapfv;
  5680.         if ( LWJGLUtil.CHECKS ) {
  5681.             checkFunctionAddress(__functionAddress);
  5682.             checkBuffer(values, size << 2);
  5683.             GLChecks.ensureBufferObject(0x88EF, false);
  5684.         }
  5685.         nglPixelMapfv(map, size, memAddress(values), __functionAddress);
  5686.     }
  5687.  
  5688.     /** Buffer object offset version of: {@link #glPixelMapf(int, int, ByteBuffer)} */
  5689.     public static void glPixelMapf(int map, int size, long valuesOffset) {
  5690.         long __functionAddress = getInstance().glPixelMapfv;
  5691.         if ( LWJGLUtil.CHECKS ) {
  5692.             checkFunctionAddress(__functionAddress);
  5693.             GLChecks.ensureBufferObject(0x88EF, true);
  5694.         }
  5695.         nglPixelMapfv(map, size, valuesOffset, __functionAddress);
  5696.     }
  5697.  
  5698.     /** Alternative version of: {@link #glPixelMapf(int, int, ByteBuffer)} */
  5699.     public static void glPixelMap(int map, FloatBuffer values) {
  5700.         long __functionAddress = getInstance().glPixelMapfv;
  5701.         if ( LWJGLUtil.CHECKS ) {
  5702.             checkFunctionAddress(__functionAddress);
  5703.             GLChecks.ensureBufferObject(0x88EF, true);
  5704.         }
  5705.         nglPixelMapfv(map, values.remaining(), memAddress(values), __functionAddress);
  5706.     }
  5707.  
  5708.     // --- [ glPixelMapusv ] ---
  5709.  
  5710.     /** JNI method for {@link #glPixelMapus(int, int, ByteBuffer)} */
  5711.     public static native void nglPixelMapusv(int map, int size, long values, long __functionAddress);
  5712.  
  5713.     /**
  5714.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5715.      * <p/>
  5716.      * Unsigned short version of {@link #glPixelMapf(int, int, ByteBuffer)}.
  5717.      *
  5718.      * @param map    the map to set
  5719.      * @param size   the map size
  5720.      * @param values the map values
  5721.      */
  5722.     public static void glPixelMapus(int map, int size, ByteBuffer values) {
  5723.         long __functionAddress = getInstance().glPixelMapusv;
  5724.         if ( LWJGLUtil.CHECKS ) {
  5725.             checkFunctionAddress(__functionAddress);
  5726.             checkBuffer(values, size << 1);
  5727.             GLChecks.ensureBufferObject(0x88EF, false);
  5728.         }
  5729.         nglPixelMapusv(map, size, memAddress(values), __functionAddress);
  5730.     }
  5731.  
  5732.     /** Buffer object offset version of: {@link #glPixelMapus(int, int, ByteBuffer)} */
  5733.     public static void glPixelMapus(int map, int size, long valuesOffset) {
  5734.         long __functionAddress = getInstance().glPixelMapusv;
  5735.         if ( LWJGLUtil.CHECKS ) {
  5736.             checkFunctionAddress(__functionAddress);
  5737.             GLChecks.ensureBufferObject(0x88EF, true);
  5738.         }
  5739.         nglPixelMapusv(map, size, valuesOffset, __functionAddress);
  5740.     }
  5741.  
  5742.     /** Alternative version of: {@link #glPixelMapus(int, int, ByteBuffer)} */
  5743.     public static void glPixelMapu(int map, ShortBuffer values) {
  5744.         long __functionAddress = getInstance().glPixelMapusv;
  5745.         if ( LWJGLUtil.CHECKS ) {
  5746.             checkFunctionAddress(__functionAddress);
  5747.             GLChecks.ensureBufferObject(0x88EF, true);
  5748.         }
  5749.         nglPixelMapusv(map, values.remaining(), memAddress(values), __functionAddress);
  5750.     }
  5751.  
  5752.     // --- [ glPixelMapuiv ] ---
  5753.  
  5754.     /** JNI method for {@link #glPixelMapui(int, int, ByteBuffer)} */
  5755.     public static native void nglPixelMapuiv(int map, int size, long values, long __functionAddress);
  5756.  
  5757.     /**
  5758.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5759.      * <p/>
  5760.      * Unsigned integer version of {@link #glPixelMapf(int, int, ByteBuffer)}.
  5761.      *
  5762.      * @param map    the map to set
  5763.      * @param size   the map size
  5764.      * @param values the map values
  5765.      */
  5766.     public static void glPixelMapui(int map, int size, ByteBuffer values) {
  5767.         long __functionAddress = getInstance().glPixelMapuiv;
  5768.         if ( LWJGLUtil.CHECKS ) {
  5769.             checkFunctionAddress(__functionAddress);
  5770.             checkBuffer(values, size << 2);
  5771.             GLChecks.ensureBufferObject(0x88EF, false);
  5772.         }
  5773.         nglPixelMapuiv(map, size, memAddress(values), __functionAddress);
  5774.     }
  5775.  
  5776.     /** Buffer object offset version of: {@link #glPixelMapui(int, int, ByteBuffer)} */
  5777.     public static void glPixelMapui(int map, int size, long valuesOffset) {
  5778.         long __functionAddress = getInstance().glPixelMapuiv;
  5779.         if ( LWJGLUtil.CHECKS ) {
  5780.             checkFunctionAddress(__functionAddress);
  5781.             GLChecks.ensureBufferObject(0x88EF, true);
  5782.         }
  5783.         nglPixelMapuiv(map, size, valuesOffset, __functionAddress);
  5784.     }
  5785.  
  5786.     /** Alternative version of: {@link #glPixelMapui(int, int, ByteBuffer)} */
  5787.     public static void glPixelMapu(int map, IntBuffer values) {
  5788.         long __functionAddress = getInstance().glPixelMapuiv;
  5789.         if ( LWJGLUtil.CHECKS ) {
  5790.             checkFunctionAddress(__functionAddress);
  5791.             GLChecks.ensureBufferObject(0x88EF, true);
  5792.         }
  5793.         nglPixelMapuiv(map, values.remaining(), memAddress(values), __functionAddress);
  5794.     }
  5795.  
  5796.     // --- [ glPixelStorei ] ---
  5797.  
  5798.     /** JNI method for {@link #glPixelStorei(int, int)} */
  5799.     public static native void nglPixelStorei(int pname, int param, long __functionAddress);
  5800.  
  5801.     /**
  5802.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glPixelStorei.xml">OpenGL SDK Reference</a>
  5803.      * <p/>
  5804.      * Sets the integer value of a pixel store parameter.
  5805.      *
  5806.      * @param pname the pixel store parameter to set. One of:<p/>{@link #GL_UNPACK_SWAP_BYTES}, {@link #GL_UNPACK_LSB_FIRST}, {@link #GL_UNPACK_ROW_LENGTH}, {@link #GL_UNPACK_SKIP_ROWS}, {@link #GL_UNPACK_SKIP_PIXELS}, {@link #GL_UNPACK_ALIGNMENT}, {@link #GL_UNPACK_IMAGE_HEIGHT}, {@link #GL_UNPACK_SKIP_IMAGES}, {@link #GL_UNPACK_COMPRESSED_BLOCK_WIDTH}, {@link #GL_UNPACK_COMPRESSED_BLOCK_HEIGHT}, {@link #GL_UNPACK_COMPRESSED_BLOCK_DEPTH}, {@link #GL_UNPACK_COMPRESSED_BLOCK_SIZE}
  5807.      * @param param the parameter value
  5808.      */
  5809.     public static void glPixelStorei(int pname, int param) {
  5810.         long __functionAddress = getInstance().glPixelStorei;
  5811.         if ( LWJGLUtil.CHECKS )
  5812.             checkFunctionAddress(__functionAddress);
  5813.         nglPixelStorei(pname, param, __functionAddress);
  5814.     }
  5815.  
  5816.     // --- [ glPixelStoref ] ---
  5817.  
  5818.     /** JNI method for {@link #glPixelStoref(int, int)} */
  5819.     public static native void nglPixelStoref(int pname, int param, long __functionAddress);
  5820.  
  5821.     /**
  5822.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glPixelStoref.xml">OpenGL SDK Reference</a>
  5823.      * <p/>
  5824.      * Float version of {@link #glPixelStorei(int, int)}.
  5825.      *
  5826.      * @param pname the pixel store parameter to set
  5827.      * @param param the parameter value
  5828.      */
  5829.     public static void glPixelStoref(int pname, int param) {
  5830.         long __functionAddress = getInstance().glPixelStoref;
  5831.         if ( LWJGLUtil.CHECKS )
  5832.             checkFunctionAddress(__functionAddress);
  5833.         nglPixelStoref(pname, param, __functionAddress);
  5834.     }
  5835.  
  5836.     // --- [ glPixelTransferi ] ---
  5837.  
  5838.     /** JNI method for {@link #glPixelTransferi(int, int)} */
  5839.     public static native void nglPixelTransferi(int pname, int param, long __functionAddress);
  5840.  
  5841.     /**
  5842.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5843.      * <p/>
  5844.      * Sets the integer value of a pixel transfer parameter.
  5845.      *
  5846.      * @param pname the pixel transfer parameter to set. One of:<p/>{@link #GL_MAP_COLOR}, {@link #GL_MAP_STENCIL}, {@link #GL_INDEX_SHIFT}, {@link #GL_INDEX_OFFSET}, {@link #GL_RED_SCALE}, {@link #GL_GREEN_SCALE}, {@link #GL_BLUE_SCALE}, {@link #GL_ALPHA_SCALE}, {@link #GL_DEPTH_SCALE}, {@link #GL_RED_BIAS}, {@link #GL_GREEN_BIAS}, {@link #GL_BLUE_BIAS}, {@link #GL_ALPHA_BIAS}, {@link #GL_DEPTH_BIAS}, {@link #GL_POST_CONVOLUTION_RED_SCALE}, {@link #GL_POST_CONVOLUTION_RED_BIAS}, {@link #GL_POST_COLOR_MATRIX_RED_SCALE}, {@link #GL_POST_COLOR_MATRIX_RED_BIAS}, {@link #GL_POST_CONVOLUTION_GREEN_SCALE}, {@link #GL_POST_CONVOLUTION_GREEN_BIAS}, {@link #GL_POST_COLOR_MATRIX_GREEN_SCALE}, {@link #GL_POST_COLOR_MATRIX_GREEN_BIAS}, {@link #GL_POST_CONVOLUTION_BLUE_SCALE}, {@link #GL_POST_CONVOLUTION_BLUE_BIAS}, {@link #GL_POST_COLOR_MATRIX_BLUE_SCALE}, {@link #GL_POST_COLOR_MATRIX_BLUE_BIAS}, {@link #GL_POST_CONVOLUTION_ALPHA_SCALE}, {@link #GL_POST_CONVOLUTION_ALPHA_BIAS}, {@link #GL_POST_COLOR_MATRIX_ALPHA_SCALE}, {@link #GL_POST_COLOR_MATRIX_ALPHA_BIAS}
  5847.      * @param param the parameter value
  5848.      */
  5849.     public static void glPixelTransferi(int pname, int param) {
  5850.         long __functionAddress = getInstance().glPixelTransferi;
  5851.         if ( LWJGLUtil.CHECKS )
  5852.             checkFunctionAddress(__functionAddress);
  5853.         nglPixelTransferi(pname, param, __functionAddress);
  5854.     }
  5855.  
  5856.     // --- [ glPixelTransferf ] ---
  5857.  
  5858.     /** JNI method for {@link #glPixelTransferf(int, float)} */
  5859.     public static native void nglPixelTransferf(int pname, float param, long __functionAddress);
  5860.  
  5861.     /**
  5862.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5863.      * <p/>
  5864.      * Float version of {@link #glPixelTransferi(int, int)}.
  5865.      *
  5866.      * @param pname the pixel transfer parameter to set
  5867.      * @param param the parameter value
  5868.      */
  5869.     public static void glPixelTransferf(int pname, float param) {
  5870.         long __functionAddress = getInstance().glPixelTransferf;
  5871.         if ( LWJGLUtil.CHECKS )
  5872.             checkFunctionAddress(__functionAddress);
  5873.         nglPixelTransferf(pname, param, __functionAddress);
  5874.     }
  5875.  
  5876.     // --- [ glPixelZoom ] ---
  5877.  
  5878.     /** JNI method for {@link #glPixelZoom(float, float)} */
  5879.     public static native void nglPixelZoom(float xfactor, float yfactor, long __functionAddress);
  5880.  
  5881.     /**
  5882.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5883.      * <p/>
  5884.      * Controls the conversion of a group of fragments.
  5885.      * <p/>
  5886.      * Let (x<sub>rp</sub>, y<sub>rp</sub>) be the current raster position. If a particular group is the n<sup>th</sup> in a row and belongs to the
  5887.      * m<sup>th</sup> row, consider the region in window coordinates bounded by the rectangle with corners
  5888.      * <p/>
  5889.      * (x<sub>rp</sub> + z<sub>x</sub>n, y<sub>rp</sub> + z<sub>y</sub>m) and (x<sub>rp</sub> + z<sub>x</sub>(n + 1), y<sub>rp</sub> + z<sub>y</sub>(m + 1))
  5890.      * <p/>
  5891.      * (either z<sub>x</sub> or z<sub>y</sub> may be negative). A fragment representing group {@code (n, m)} is produced for each framebuffer pixel inside, or
  5892.      * on the bottom or left boundary, of this rectangle.
  5893.      *
  5894.      * @param xfactor the z<sub>x</sub> factor
  5895.      * @param yfactor the z<sub>y</sub> factor
  5896.      */
  5897.     public static void glPixelZoom(float xfactor, float yfactor) {
  5898.         long __functionAddress = getInstance().glPixelZoom;
  5899.         if ( LWJGLUtil.CHECKS )
  5900.             checkFunctionAddress(__functionAddress);
  5901.         nglPixelZoom(xfactor, yfactor, __functionAddress);
  5902.     }
  5903.  
  5904.     // --- [ glPointSize ] ---
  5905.  
  5906.     /** JNI method for {@link #glPointSize(float)} */
  5907.     public static native void nglPointSize(float size, long __functionAddress);
  5908.  
  5909.     /**
  5910.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glPointSize.xml">OpenGL SDK Reference</a>
  5911.      * <p/>
  5912.      * Controls the rasterization of points if no vertex, tessellation control, tessellation evaluation, or geometry shader is active. The default point size is 1.0.
  5913.      *
  5914.      * @param size the request size of a point
  5915.      */
  5916.     public static void glPointSize(float size) {
  5917.         long __functionAddress = getInstance().glPointSize;
  5918.         if ( LWJGLUtil.CHECKS )
  5919.             checkFunctionAddress(__functionAddress);
  5920.         nglPointSize(size, __functionAddress);
  5921.     }
  5922.  
  5923.     // --- [ glPolygonMode ] ---
  5924.  
  5925.     /** JNI method for {@link #glPolygonMode(int, int)} */
  5926.     public static native void nglPolygonMode(int face, int mode, long __functionAddress);
  5927.  
  5928.     /**
  5929.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glPolygonMode.xml">OpenGL SDK Reference</a>
  5930.      * <p/>
  5931.      * Controls the interpretation of polygons for rasterization.
  5932.      * <p/>
  5933.      * {@link #GL_FILL} is the default mode of polygon rasterization. Note that these modes affect only the final rasterization of polygons: in particular, a
  5934.      * polygon's vertices are lit, and the polygon is clipped and possibly culled before these modes are applied. Polygon antialiasing applies only to the
  5935.      * {@link #GL_FILL} state of PolygonMode. For {@link #GL_POINT} or {@link #GL_LINE}, point antialiasing or line segment antialiasing, respectively, apply.
  5936.      *
  5937.      * @param face the face for which to set the rasterizing method. One of:<p/>{@link #GL_FRONT}, {@link #GL_BACK}, {@link #GL_FRONT_AND_BACK}
  5938.      * @param mode the rasterization mode. One of:<p/>{@link #GL_POINT}, {@link #GL_LINE}, {@link #GL_FILL}
  5939.      */
  5940.     public static void glPolygonMode(int face, int mode) {
  5941.         long __functionAddress = getInstance().glPolygonMode;
  5942.         if ( LWJGLUtil.CHECKS )
  5943.             checkFunctionAddress(__functionAddress);
  5944.         nglPolygonMode(face, mode, __functionAddress);
  5945.     }
  5946.  
  5947.     // --- [ glPolygonOffset ] ---
  5948.  
  5949.     /** JNI method for {@link #glPolygonOffset(float, float)} */
  5950.     public static native void nglPolygonOffset(float factor, float units, long __functionAddress);
  5951.  
  5952.     /**
  5953.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glPolygonOffset.xml">OpenGL SDK Reference</a>
  5954.      * <p/>
  5955.      * The depth values of all fragments generated by the rasterization of a polygon may be offset by a single value that is computed for that polygon. This
  5956.      * function determines that value.
  5957.      * <p/>
  5958.      * {@code factor} scales the maximum depth slope of the polygon, and {@code units} scales an implementation-dependent constant that relates to the usable
  5959.      * resolution of the depth buffer. The resulting values are summed to produce the polygon offset value.
  5960.      *
  5961.      * @param factor the maximum depth slope factor
  5962.      * @param units  the constant scale
  5963.      */
  5964.     public static void glPolygonOffset(float factor, float units) {
  5965.         long __functionAddress = getInstance().glPolygonOffset;
  5966.         if ( LWJGLUtil.CHECKS )
  5967.             checkFunctionAddress(__functionAddress);
  5968.         nglPolygonOffset(factor, units, __functionAddress);
  5969.     }
  5970.  
  5971.     // --- [ glPolygonStipple ] ---
  5972.  
  5973.     /** JNI method for {@link #glPolygonStipple(ByteBuffer)} */
  5974.     public static native void nglPolygonStipple(long pattern, long __functionAddress);
  5975.  
  5976.     /**
  5977.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  5978.      * <p/>
  5979.      * Defines a polygon stipple. It works much the same way as {@link #glLineStipple(int, short)}, masking out certain fragments produced by rasterization so that they
  5980.      * are not sent to the next stage of the GL. This is the case regardless of the state of polygon antialiasing.
  5981.      * <p/>
  5982.      * If x<sub>w</sub> and y<sub>w</sub> are the window coordinates of a rasterized polygon fragment, then that fragment is sent to the next stage of the GL
  5983.      * if and only if the bit of the pattern (x<sub>w</sub> mod 32, y<sub>w</sub> mod 32) is 1.
  5984.      * <p/>
  5985.      * Polygon stippling may be enabled or disabled with {@link #glEnable(int)} or {@link #glDisable(int)} using the constant {@link #GL_POLYGON_STIPPLE}. When disabled,
  5986.      * it is as if the stipple pattern were all ones.
  5987.      *
  5988.      * @param pattern a pointer to memory into which a 32 &times; 32 pattern is packed
  5989.      */
  5990.     public static void glPolygonStipple(ByteBuffer pattern) {
  5991.         long __functionAddress = getInstance().glPolygonStipple;
  5992.         if ( LWJGLUtil.CHECKS ) {
  5993.             checkFunctionAddress(__functionAddress);
  5994.             GLChecks.ensureBufferObject(0x88EF, false);
  5995.         }
  5996.         nglPolygonStipple(memAddress(pattern), __functionAddress);
  5997.     }
  5998.  
  5999.     /** Buffer object offset version of: {@link #glPolygonStipple(ByteBuffer)} */
  6000.     public static void glPolygonStipple(long patternOffset) {
  6001.         long __functionAddress = getInstance().glPolygonStipple;
  6002.         if ( LWJGLUtil.CHECKS ) {
  6003.             checkFunctionAddress(__functionAddress);
  6004.             GLChecks.ensureBufferObject(0x88EF, true);
  6005.         }
  6006.         nglPolygonStipple(patternOffset, __functionAddress);
  6007.     }
  6008.  
  6009.     // --- [ glPushAttrib ] ---
  6010.  
  6011.     /** JNI method for {@link #glPushAttrib(int)} */
  6012.     public static native void nglPushAttrib(int mask, long __functionAddress);
  6013.  
  6014.     /**
  6015.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6016.      * <p/>
  6017.      * Takes a bitwise OR of symbolic constants indicating which groups of state variables to push onto the server attribute stack. Each constant refers to a
  6018.      * group of state variables.
  6019.      * <p/>
  6020.      * Bits set in mask that do not correspond to an attribute group are ignored. The special mask value {@link #GL_ALL_ATTRIB_BITS} may be used to push all
  6021.      * stackable server state.
  6022.      * <p/>
  6023.      * A {@link #GL_STACK_OVERFLOW} error is generated if {@code PushAttrib} is called and the attribute stack depth is equal to the value of
  6024.      * {@link #GL_MAX_ATTRIB_STACK_DEPTH}.
  6025.      *
  6026.      * @param mask the state variables to push. One of:<p/>{@link #GL_ACCUM_BUFFER_BIT}, {@link #GL_COLOR_BUFFER_BIT}, {@link #GL_CURRENT_BIT}, {@link #GL_DEPTH_BUFFER_BIT}, {@link #GL_ENABLE_BIT}, {@link #GL_EVAL_BIT}, {@link #GL_FOG_BIT}, {@link #GL_HINT_BIT}, {@link #GL_LIGHTING_BIT}, {@link #GL_LINE_BIT}, {@link #GL_LIST_BIT}, {@link #GL_MULTISAMPLE_BIT}, {@link #GL_PIXEL_MODE_BIT}, {@link #GL_POINT_BIT}, {@link #GL_POLYGON_BIT}, {@link #GL_POLYGON_STIPPLE_BIT}, {@link #GL_SCISSOR_BIT}, {@link #GL_STENCIL_BUFFER_BIT}, {@link #GL_TEXTURE_BIT}, {@link #GL_TRANSFORM_BIT}, {@link #GL_VIEWPORT_BIT}, {@link #GL_ALL_ATTRIB_BITS}
  6027.      */
  6028.     public static void glPushAttrib(int mask) {
  6029.         long __functionAddress = getInstance().glPushAttrib;
  6030.         if ( LWJGLUtil.CHECKS )
  6031.             checkFunctionAddress(__functionAddress);
  6032.         nglPushAttrib(mask, __functionAddress);
  6033.     }
  6034.  
  6035.     // --- [ glPushClientAttrib ] ---
  6036.  
  6037.     /** JNI method for {@link #glPushClientAttrib(int)} */
  6038.     public static native void nglPushClientAttrib(int mask, long __functionAddress);
  6039.  
  6040.     /**
  6041.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6042.      * <p/>
  6043.      * Takes a bitwise OR of symbolic constants indicating which groups of state variables to push onto the client attribute stack. Each constant refers to a
  6044.      * group of state variables.
  6045.      * <p/>
  6046.      * Bits set in mask that do not correspond to an attribute group are ignored. The special mask value {@link #GL_CLIENT_ALL_ATTRIB_BITS} may be used to push
  6047.      * all stackable client state.
  6048.      * <p/>
  6049.      * A {@link #GL_STACK_OVERFLOW} error is generated if {@code PushAttrib} is called and the client attribute stack depth is equal to the value of
  6050.      * {@link #GL_MAX_CLIENT_ATTRIB_STACK_DEPTH}.
  6051.      *
  6052.      * @param mask the state variables to push. One of:<p/>{@link #GL_CLIENT_VERTEX_ARRAY_BIT}, {@link #GL_CLIENT_PIXEL_STORE_BIT}, {@link #GL_CLIENT_ALL_ATTRIB_BITS}
  6053.      */
  6054.     public static void glPushClientAttrib(int mask) {
  6055.         long __functionAddress = getInstance().glPushClientAttrib;
  6056.         if ( LWJGLUtil.CHECKS )
  6057.             checkFunctionAddress(__functionAddress);
  6058.         nglPushClientAttrib(mask, __functionAddress);
  6059.     }
  6060.  
  6061.     // --- [ glPopAttrib ] ---
  6062.  
  6063.     /** JNI method for {@link #glPopAttrib()} */
  6064.     public static native void nglPopAttrib(long __functionAddress);
  6065.  
  6066.     /**
  6067.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6068.      * <p/>
  6069.      * Resets the values of those state variables that were saved with the last {@link #glPushAttrib(int)}. Those not saved remain unchanged.
  6070.      */
  6071.     public static void glPopAttrib() {
  6072.         long __functionAddress = getInstance().glPopAttrib;
  6073.         if ( LWJGLUtil.CHECKS )
  6074.             checkFunctionAddress(__functionAddress);
  6075.         nglPopAttrib(__functionAddress);
  6076.     }
  6077.  
  6078.     // --- [ glPopClientAttrib ] ---
  6079.  
  6080.     /** JNI method for {@link #glPopClientAttrib()} */
  6081.     public static native void nglPopClientAttrib(long __functionAddress);
  6082.  
  6083.     /**
  6084.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6085.      * <p/>
  6086.      * Resets the values of those state variables that were saved with the last {@link #glPushClientAttrib(int)}. Those not saved remain unchanged.
  6087.      */
  6088.     public static void glPopClientAttrib() {
  6089.         long __functionAddress = getInstance().glPopClientAttrib;
  6090.         if ( LWJGLUtil.CHECKS )
  6091.             checkFunctionAddress(__functionAddress);
  6092.         nglPopClientAttrib(__functionAddress);
  6093.     }
  6094.  
  6095.     // --- [ glPopMatrix ] ---
  6096.  
  6097.     /** JNI method for {@link #glPopMatrix()} */
  6098.     public static native void nglPopMatrix(long __functionAddress);
  6099.  
  6100.     /**
  6101.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6102.      * <p/>
  6103.      * Pops the top entry off the current matrix stack, replacing the current matrix with the matrix that was the second entry in the stack.
  6104.      */
  6105.     public static void glPopMatrix() {
  6106.         long __functionAddress = getInstance().glPopMatrix;
  6107.         if ( LWJGLUtil.CHECKS )
  6108.             checkFunctionAddress(__functionAddress);
  6109.         nglPopMatrix(__functionAddress);
  6110.     }
  6111.  
  6112.     // --- [ glPopName ] ---
  6113.  
  6114.     /** JNI method for {@link #glPopName()} */
  6115.     public static native void nglPopName(long __functionAddress);
  6116.  
  6117.     /**
  6118.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6119.      * <p/>
  6120.      * Pops one name off the top of the selection name stack.
  6121.      */
  6122.     public static void glPopName() {
  6123.         long __functionAddress = getInstance().glPopName;
  6124.         if ( LWJGLUtil.CHECKS )
  6125.             checkFunctionAddress(__functionAddress);
  6126.         nglPopName(__functionAddress);
  6127.     }
  6128.  
  6129.     // --- [ glPrioritizeTextures ] ---
  6130.  
  6131.     /** JNI method for {@link #glPrioritizeTextures(int, ByteBuffer, ByteBuffer)} */
  6132.     public static native void nglPrioritizeTextures(int n, long textures, long priorities, long __functionAddress);
  6133.  
  6134.     /**
  6135.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6136.      * <p/>
  6137.      * Sets the priority of texture objects. Each priority value is clamped to the range [0, 1] before it is assigned. Zero indicates the lowest priority, with
  6138.      * the least likelihood of being resident. One indicates the highest priority, with the greatest likelihood of being resident.
  6139.      *
  6140.      * @param n          the number of texture object priorities to set
  6141.      * @param textures   an array of texture object names
  6142.      * @param priorities an array of texture object priorities
  6143.      */
  6144.     public static void glPrioritizeTextures(int n, ByteBuffer textures, ByteBuffer priorities) {
  6145.         long __functionAddress = getInstance().glPrioritizeTextures;
  6146.         if ( LWJGLUtil.CHECKS ) {
  6147.             checkFunctionAddress(__functionAddress);
  6148.             checkBuffer(textures, n << 2);
  6149.             checkBuffer(priorities, n << 2);
  6150.         }
  6151.         nglPrioritizeTextures(n, memAddress(textures), memAddress(priorities), __functionAddress);
  6152.     }
  6153.  
  6154.     /** Alternative version of: {@link #glPrioritizeTextures(int, ByteBuffer, ByteBuffer)} */
  6155.     public static void glPrioritizeTextures(IntBuffer textures, FloatBuffer priorities) {
  6156.         long __functionAddress = getInstance().glPrioritizeTextures;
  6157.         if ( LWJGLUtil.CHECKS ) {
  6158.             checkFunctionAddress(__functionAddress);
  6159.             checkBuffer(priorities, textures.remaining());
  6160.         }
  6161.         nglPrioritizeTextures(textures.remaining(), memAddress(textures), memAddress(priorities), __functionAddress);
  6162.     }
  6163.  
  6164.     // --- [ glPushMatrix ] ---
  6165.  
  6166.     /** JNI method for {@link #glPushMatrix()} */
  6167.     public static native void nglPushMatrix(long __functionAddress);
  6168.  
  6169.     /**
  6170.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6171.      * <p/>
  6172.      * Pushes the current matrix stack down by one, duplicating the current matrix in both the top of the stack and the entry below it.
  6173.      */
  6174.     public static void glPushMatrix() {
  6175.         long __functionAddress = getInstance().glPushMatrix;
  6176.         if ( LWJGLUtil.CHECKS )
  6177.             checkFunctionAddress(__functionAddress);
  6178.         nglPushMatrix(__functionAddress);
  6179.     }
  6180.  
  6181.     // --- [ glPushName ] ---
  6182.  
  6183.     /** JNI method for {@link #glPushName(int)} */
  6184.     public static native void nglPushName(int name, long __functionAddress);
  6185.  
  6186.     /**
  6187.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6188.      * <p/>
  6189.      * Causes {@code name} to be pushed onto the selection name stack.
  6190.      *
  6191.      * @param name the name to push
  6192.      */
  6193.     public static void glPushName(int name) {
  6194.         long __functionAddress = getInstance().glPushName;
  6195.         if ( LWJGLUtil.CHECKS )
  6196.             checkFunctionAddress(__functionAddress);
  6197.         nglPushName(name, __functionAddress);
  6198.     }
  6199.  
  6200.     // --- [ glRasterPos2i ] ---
  6201.  
  6202.     /** JNI method for {@link #glRasterPos2i(int, int)} */
  6203.     public static native void nglRasterPos2i(int x, int y, long __functionAddress);
  6204.  
  6205.     /**
  6206.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6207.      * <p/>
  6208.      * Sets the two-dimensional current raster position. {@code z} is implicitly set to 0 and {@code w} implicitly set to 1.
  6209.      * <p/>
  6210.      * The coordinates are treated as if they were specified in a Vertex command. If a vertex shader is active, this vertex shader is executed using the x, y,
  6211.      * z, and w coordinates as the object coordinates of the vertex. Otherwise, the x, y, z, and w coordinates are transformed by the current model-view and
  6212.      * projection matrices. These coordinates, along with current values, are used to generate primary and secondary colors and texture coordinates just as is
  6213.      * done for a vertex. The colors and texture coordinates so produced replace the colors and texture coordinates stored in the current raster position's
  6214.      * associated data.
  6215.      *
  6216.      * @param x the {@code x} raster coordinate
  6217.      * @param y the {@code y} raster coordinate
  6218.      */
  6219.     public static void glRasterPos2i(int x, int y) {
  6220.         long __functionAddress = getInstance().glRasterPos2i;
  6221.         if ( LWJGLUtil.CHECKS )
  6222.             checkFunctionAddress(__functionAddress);
  6223.         nglRasterPos2i(x, y, __functionAddress);
  6224.     }
  6225.  
  6226.     // --- [ glRasterPos2s ] ---
  6227.  
  6228.     /** JNI method for {@link #glRasterPos2s(short, short)} */
  6229.     public static native void nglRasterPos2s(short x, short y, long __functionAddress);
  6230.  
  6231.     /**
  6232.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6233.      * <p/>
  6234.      * Short version of {@link #glRasterPos2i(int, int)}.
  6235.      *
  6236.      * @param x the {@code x} raster coordinate
  6237.      * @param y the {@code y} raster coordinate
  6238.      */
  6239.     public static void glRasterPos2s(short x, short y) {
  6240.         long __functionAddress = getInstance().glRasterPos2s;
  6241.         if ( LWJGLUtil.CHECKS )
  6242.             checkFunctionAddress(__functionAddress);
  6243.         nglRasterPos2s(x, y, __functionAddress);
  6244.     }
  6245.  
  6246.     // --- [ glRasterPos2f ] ---
  6247.  
  6248.     /** JNI method for {@link #glRasterPos2f(float, float)} */
  6249.     public static native void nglRasterPos2f(float x, float y, long __functionAddress);
  6250.  
  6251.     /**
  6252.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6253.      * <p/>
  6254.      * Float version of {@link #glRasterPos2i(int, int)}.
  6255.      *
  6256.      * @param x the {@code x} raster coordinate
  6257.      * @param y the {@code y} raster coordinate
  6258.      */
  6259.     public static void glRasterPos2f(float x, float y) {
  6260.         long __functionAddress = getInstance().glRasterPos2f;
  6261.         if ( LWJGLUtil.CHECKS )
  6262.             checkFunctionAddress(__functionAddress);
  6263.         nglRasterPos2f(x, y, __functionAddress);
  6264.     }
  6265.  
  6266.     // --- [ glRasterPos2d ] ---
  6267.  
  6268.     /** JNI method for {@link #glRasterPos2d(double, double)} */
  6269.     public static native void nglRasterPos2d(double x, double y, long __functionAddress);
  6270.  
  6271.     /**
  6272.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6273.      * <p/>
  6274.      * Double version of {@link #glRasterPos2i(int, int)}.
  6275.      *
  6276.      * @param x the {@code x} raster coordinate
  6277.      * @param y the {@code y} raster coordinate
  6278.      */
  6279.     public static void glRasterPos2d(double x, double y) {
  6280.         long __functionAddress = getInstance().glRasterPos2d;
  6281.         if ( LWJGLUtil.CHECKS )
  6282.             checkFunctionAddress(__functionAddress);
  6283.         nglRasterPos2d(x, y, __functionAddress);
  6284.     }
  6285.  
  6286.     // --- [ glRasterPos2iv ] ---
  6287.  
  6288.     /** JNI method for {@link #glRasterPos2i(ByteBuffer)} */
  6289.     public static native void nglRasterPos2iv(long coords, long __functionAddress);
  6290.  
  6291.     /**
  6292.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6293.      * <p/>
  6294.      * Pointer version of {@link #glRasterPos2i(int, int)}.
  6295.      *
  6296.      * @param coords the raster position buffer
  6297.      */
  6298.     public static void glRasterPos2i(ByteBuffer coords) {
  6299.         long __functionAddress = getInstance().glRasterPos2iv;
  6300.         if ( LWJGLUtil.CHECKS ) {
  6301.             checkFunctionAddress(__functionAddress);
  6302.             checkBuffer(coords, 2 << 2);
  6303.         }
  6304.         nglRasterPos2iv(memAddress(coords), __functionAddress);
  6305.     }
  6306.  
  6307.     /** Alternative version of: {@link #glRasterPos2i(ByteBuffer)} */
  6308.     public static void glRasterPos2(IntBuffer coords) {
  6309.         long __functionAddress = getInstance().glRasterPos2iv;
  6310.         if ( LWJGLUtil.CHECKS ) {
  6311.             checkFunctionAddress(__functionAddress);
  6312.             checkBuffer(coords, 2);
  6313.         }
  6314.         nglRasterPos2iv(memAddress(coords), __functionAddress);
  6315.     }
  6316.  
  6317.     // --- [ glRasterPos2sv ] ---
  6318.  
  6319.     /** JNI method for {@link #glRasterPos2s(ByteBuffer)} */
  6320.     public static native void nglRasterPos2sv(long coords, long __functionAddress);
  6321.  
  6322.     /**
  6323.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6324.      * <p/>
  6325.      * Pointer version of {@link #glRasterPos2s(short, short)}.
  6326.      *
  6327.      * @param coords the raster position buffer
  6328.      */
  6329.     public static void glRasterPos2s(ByteBuffer coords) {
  6330.         long __functionAddress = getInstance().glRasterPos2sv;
  6331.         if ( LWJGLUtil.CHECKS ) {
  6332.             checkFunctionAddress(__functionAddress);
  6333.             checkBuffer(coords, 2 << 1);
  6334.         }
  6335.         nglRasterPos2sv(memAddress(coords), __functionAddress);
  6336.     }
  6337.  
  6338.     /** Alternative version of: {@link #glRasterPos2s(ByteBuffer)} */
  6339.     public static void glRasterPos2(ShortBuffer coords) {
  6340.         long __functionAddress = getInstance().glRasterPos2sv;
  6341.         if ( LWJGLUtil.CHECKS ) {
  6342.             checkFunctionAddress(__functionAddress);
  6343.             checkBuffer(coords, 2);
  6344.         }
  6345.         nglRasterPos2sv(memAddress(coords), __functionAddress);
  6346.     }
  6347.  
  6348.     // --- [ glRasterPos2fv ] ---
  6349.  
  6350.     /** JNI method for {@link #glRasterPos2f(ByteBuffer)} */
  6351.     public static native void nglRasterPos2fv(long coords, long __functionAddress);
  6352.  
  6353.     /**
  6354.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6355.      * <p/>
  6356.      * Pointer version of {@link #glRasterPos2f(float, float)}.
  6357.      *
  6358.      * @param coords the raster position buffer
  6359.      */
  6360.     public static void glRasterPos2f(ByteBuffer coords) {
  6361.         long __functionAddress = getInstance().glRasterPos2fv;
  6362.         if ( LWJGLUtil.CHECKS ) {
  6363.             checkFunctionAddress(__functionAddress);
  6364.             checkBuffer(coords, 2 << 2);
  6365.         }
  6366.         nglRasterPos2fv(memAddress(coords), __functionAddress);
  6367.     }
  6368.  
  6369.     /** Alternative version of: {@link #glRasterPos2f(ByteBuffer)} */
  6370.     public static void glRasterPos2(FloatBuffer coords) {
  6371.         long __functionAddress = getInstance().glRasterPos2fv;
  6372.         if ( LWJGLUtil.CHECKS ) {
  6373.             checkFunctionAddress(__functionAddress);
  6374.             checkBuffer(coords, 2);
  6375.         }
  6376.         nglRasterPos2fv(memAddress(coords), __functionAddress);
  6377.     }
  6378.  
  6379.     // --- [ glRasterPos2dv ] ---
  6380.  
  6381.     /** JNI method for {@link #glRasterPos2d(ByteBuffer)} */
  6382.     public static native void nglRasterPos2dv(long coords, long __functionAddress);
  6383.  
  6384.     /**
  6385.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6386.      * <p/>
  6387.      * Pointer version of {@link #glRasterPos2d(double, double)}.
  6388.      *
  6389.      * @param coords the raster position buffer
  6390.      */
  6391.     public static void glRasterPos2d(ByteBuffer coords) {
  6392.         long __functionAddress = getInstance().glRasterPos2dv;
  6393.         if ( LWJGLUtil.CHECKS ) {
  6394.             checkFunctionAddress(__functionAddress);
  6395.             checkBuffer(coords, 2 << 3);
  6396.         }
  6397.         nglRasterPos2dv(memAddress(coords), __functionAddress);
  6398.     }
  6399.  
  6400.     /** Alternative version of: {@link #glRasterPos2d(ByteBuffer)} */
  6401.     public static void glRasterPos2(DoubleBuffer coords) {
  6402.         long __functionAddress = getInstance().glRasterPos2dv;
  6403.         if ( LWJGLUtil.CHECKS ) {
  6404.             checkFunctionAddress(__functionAddress);
  6405.             checkBuffer(coords, 2);
  6406.         }
  6407.         nglRasterPos2dv(memAddress(coords), __functionAddress);
  6408.     }
  6409.  
  6410.     // --- [ glRasterPos3i ] ---
  6411.  
  6412.     /** JNI method for {@link #glRasterPos3i(int, int, int)} */
  6413.     public static native void nglRasterPos3i(int x, int y, int z, long __functionAddress);
  6414.  
  6415.     /**
  6416.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6417.      * <p/>
  6418.      * Sets the three-dimensional current raster position. {@code w} is implicitly set to 1. See {@link #glRasterPos2i(int, int)} for more details.
  6419.      *
  6420.      * @param x the {@code x} raster coordinate
  6421.      * @param y the {@code y} raster coordinate
  6422.      * @param z the {@code z} raster coordinate
  6423.      */
  6424.     public static void glRasterPos3i(int x, int y, int z) {
  6425.         long __functionAddress = getInstance().glRasterPos3i;
  6426.         if ( LWJGLUtil.CHECKS )
  6427.             checkFunctionAddress(__functionAddress);
  6428.         nglRasterPos3i(x, y, z, __functionAddress);
  6429.     }
  6430.  
  6431.     // --- [ glRasterPos3s ] ---
  6432.  
  6433.     /** JNI method for {@link #glRasterPos3s(short, short, short)} */
  6434.     public static native void nglRasterPos3s(short x, short y, short z, long __functionAddress);
  6435.  
  6436.     /**
  6437.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6438.      * <p/>
  6439.      * Short version of {@link #glRasterPos3i(int, int, int)}.
  6440.      *
  6441.      * @param x the {@code x} raster coordinate
  6442.      * @param y the {@code y} raster coordinate
  6443.      * @param z the {@code z} raster coordinate
  6444.      */
  6445.     public static void glRasterPos3s(short x, short y, short z) {
  6446.         long __functionAddress = getInstance().glRasterPos3s;
  6447.         if ( LWJGLUtil.CHECKS )
  6448.             checkFunctionAddress(__functionAddress);
  6449.         nglRasterPos3s(x, y, z, __functionAddress);
  6450.     }
  6451.  
  6452.     // --- [ glRasterPos3f ] ---
  6453.  
  6454.     /** JNI method for {@link #glRasterPos3f(float, float, float)} */
  6455.     public static native void nglRasterPos3f(float x, float y, float z, long __functionAddress);
  6456.  
  6457.     /**
  6458.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6459.      * <p/>
  6460.      * Float version of {@link #glRasterPos3i(int, int, int)}.
  6461.      *
  6462.      * @param x the {@code x} raster coordinate
  6463.      * @param y the {@code y} raster coordinate
  6464.      * @param z the {@code z} raster coordinate
  6465.      */
  6466.     public static void glRasterPos3f(float x, float y, float z) {
  6467.         long __functionAddress = getInstance().glRasterPos3f;
  6468.         if ( LWJGLUtil.CHECKS )
  6469.             checkFunctionAddress(__functionAddress);
  6470.         nglRasterPos3f(x, y, z, __functionAddress);
  6471.     }
  6472.  
  6473.     // --- [ glRasterPos3d ] ---
  6474.  
  6475.     /** JNI method for {@link #glRasterPos3d(double, double, double)} */
  6476.     public static native void nglRasterPos3d(double x, double y, double z, long __functionAddress);
  6477.  
  6478.     /**
  6479.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6480.      * <p/>
  6481.      * Double version of {@link #glRasterPos3i(int, int, int)}.
  6482.      *
  6483.      * @param x the {@code x} raster coordinate
  6484.      * @param y the {@code y} raster coordinate
  6485.      * @param z the {@code z} raster coordinate
  6486.      */
  6487.     public static void glRasterPos3d(double x, double y, double z) {
  6488.         long __functionAddress = getInstance().glRasterPos3d;
  6489.         if ( LWJGLUtil.CHECKS )
  6490.             checkFunctionAddress(__functionAddress);
  6491.         nglRasterPos3d(x, y, z, __functionAddress);
  6492.     }
  6493.  
  6494.     // --- [ glRasterPos3iv ] ---
  6495.  
  6496.     /** JNI method for {@link #glRasterPos3i(ByteBuffer)} */
  6497.     public static native void nglRasterPos3iv(long coords, long __functionAddress);
  6498.  
  6499.     /**
  6500.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6501.      * <p/>
  6502.      * Pointer version of {@link #glRasterPos3i(int, int, int)}.
  6503.      *
  6504.      * @param coords the raster position buffer
  6505.      */
  6506.     public static void glRasterPos3i(ByteBuffer coords) {
  6507.         long __functionAddress = getInstance().glRasterPos3iv;
  6508.         if ( LWJGLUtil.CHECKS ) {
  6509.             checkFunctionAddress(__functionAddress);
  6510.             checkBuffer(coords, 3 << 2);
  6511.         }
  6512.         nglRasterPos3iv(memAddress(coords), __functionAddress);
  6513.     }
  6514.  
  6515.     /** Alternative version of: {@link #glRasterPos3i(ByteBuffer)} */
  6516.     public static void glRasterPos3(IntBuffer coords) {
  6517.         long __functionAddress = getInstance().glRasterPos3iv;
  6518.         if ( LWJGLUtil.CHECKS ) {
  6519.             checkFunctionAddress(__functionAddress);
  6520.             checkBuffer(coords, 3);
  6521.         }
  6522.         nglRasterPos3iv(memAddress(coords), __functionAddress);
  6523.     }
  6524.  
  6525.     // --- [ glRasterPos3sv ] ---
  6526.  
  6527.     /** JNI method for {@link #glRasterPos3s(ByteBuffer)} */
  6528.     public static native void nglRasterPos3sv(long coords, long __functionAddress);
  6529.  
  6530.     /**
  6531.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6532.      * <p/>
  6533.      * Pointer version of {@link #glRasterPos3s(short, short, short)}.
  6534.      *
  6535.      * @param coords the raster position buffer
  6536.      */
  6537.     public static void glRasterPos3s(ByteBuffer coords) {
  6538.         long __functionAddress = getInstance().glRasterPos3sv;
  6539.         if ( LWJGLUtil.CHECKS ) {
  6540.             checkFunctionAddress(__functionAddress);
  6541.             checkBuffer(coords, 3 << 1);
  6542.         }
  6543.         nglRasterPos3sv(memAddress(coords), __functionAddress);
  6544.     }
  6545.  
  6546.     /** Alternative version of: {@link #glRasterPos3s(ByteBuffer)} */
  6547.     public static void glRasterPos3(ShortBuffer coords) {
  6548.         long __functionAddress = getInstance().glRasterPos3sv;
  6549.         if ( LWJGLUtil.CHECKS ) {
  6550.             checkFunctionAddress(__functionAddress);
  6551.             checkBuffer(coords, 3);
  6552.         }
  6553.         nglRasterPos3sv(memAddress(coords), __functionAddress);
  6554.     }
  6555.  
  6556.     // --- [ glRasterPos3fv ] ---
  6557.  
  6558.     /** JNI method for {@link #glRasterPos3f(ByteBuffer)} */
  6559.     public static native void nglRasterPos3fv(long coords, long __functionAddress);
  6560.  
  6561.     /**
  6562.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6563.      * <p/>
  6564.      * Pointer version of {@link #glRasterPos3f(float, float, float)}.
  6565.      *
  6566.      * @param coords the raster position buffer
  6567.      */
  6568.     public static void glRasterPos3f(ByteBuffer coords) {
  6569.         long __functionAddress = getInstance().glRasterPos3fv;
  6570.         if ( LWJGLUtil.CHECKS ) {
  6571.             checkFunctionAddress(__functionAddress);
  6572.             checkBuffer(coords, 3 << 2);
  6573.         }
  6574.         nglRasterPos3fv(memAddress(coords), __functionAddress);
  6575.     }
  6576.  
  6577.     /** Alternative version of: {@link #glRasterPos3f(ByteBuffer)} */
  6578.     public static void glRasterPos3(FloatBuffer coords) {
  6579.         long __functionAddress = getInstance().glRasterPos3fv;
  6580.         if ( LWJGLUtil.CHECKS ) {
  6581.             checkFunctionAddress(__functionAddress);
  6582.             checkBuffer(coords, 3);
  6583.         }
  6584.         nglRasterPos3fv(memAddress(coords), __functionAddress);
  6585.     }
  6586.  
  6587.     // --- [ glRasterPos3dv ] ---
  6588.  
  6589.     /** JNI method for {@link #glRasterPos3d(ByteBuffer)} */
  6590.     public static native void nglRasterPos3dv(long coords, long __functionAddress);
  6591.  
  6592.     /**
  6593.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6594.      * <p/>
  6595.      * Pointer version of {@link #glRasterPos3d(double, double, double)}.
  6596.      *
  6597.      * @param coords the raster position buffer
  6598.      */
  6599.     public static void glRasterPos3d(ByteBuffer coords) {
  6600.         long __functionAddress = getInstance().glRasterPos3dv;
  6601.         if ( LWJGLUtil.CHECKS ) {
  6602.             checkFunctionAddress(__functionAddress);
  6603.             checkBuffer(coords, 3 << 3);
  6604.         }
  6605.         nglRasterPos3dv(memAddress(coords), __functionAddress);
  6606.     }
  6607.  
  6608.     /** Alternative version of: {@link #glRasterPos3d(ByteBuffer)} */
  6609.     public static void glRasterPos3(DoubleBuffer coords) {
  6610.         long __functionAddress = getInstance().glRasterPos3dv;
  6611.         if ( LWJGLUtil.CHECKS ) {
  6612.             checkFunctionAddress(__functionAddress);
  6613.             checkBuffer(coords, 3);
  6614.         }
  6615.         nglRasterPos3dv(memAddress(coords), __functionAddress);
  6616.     }
  6617.  
  6618.     // --- [ glRasterPos4i ] ---
  6619.  
  6620.     /** JNI method for {@link #glRasterPos4i(int, int, int, int)} */
  6621.     public static native void nglRasterPos4i(int x, int y, int z, int w, long __functionAddress);
  6622.  
  6623.     /**
  6624.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6625.      * <p/>
  6626.      * Sets the four-dimensional current raster position. See {@link #glRasterPos2i(int, int)} for more details.
  6627.      *
  6628.      * @param x the {@code x} raster coordinate
  6629.      * @param y the {@code y} raster coordinate
  6630.      * @param z the {@code z} raster coordinate
  6631.      * @param w the {@code w} raster coordinate
  6632.      */
  6633.     public static void glRasterPos4i(int x, int y, int z, int w) {
  6634.         long __functionAddress = getInstance().glRasterPos4i;
  6635.         if ( LWJGLUtil.CHECKS )
  6636.             checkFunctionAddress(__functionAddress);
  6637.         nglRasterPos4i(x, y, z, w, __functionAddress);
  6638.     }
  6639.  
  6640.     // --- [ glRasterPos4s ] ---
  6641.  
  6642.     /** JNI method for {@link #glRasterPos4s(short, short, short, short)} */
  6643.     public static native void nglRasterPos4s(short x, short y, short z, short w, long __functionAddress);
  6644.  
  6645.     /**
  6646.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6647.      * <p/>
  6648.      * Short version of {@link #glRasterPos4i(int, int, int, int)}.
  6649.      *
  6650.      * @param x the {@code x} raster coordinate
  6651.      * @param y the {@code y} raster coordinate
  6652.      * @param z the {@code z} raster coordinate
  6653.      * @param w the {@code w} raster coordinate
  6654.      */
  6655.     public static void glRasterPos4s(short x, short y, short z, short w) {
  6656.         long __functionAddress = getInstance().glRasterPos4s;
  6657.         if ( LWJGLUtil.CHECKS )
  6658.             checkFunctionAddress(__functionAddress);
  6659.         nglRasterPos4s(x, y, z, w, __functionAddress);
  6660.     }
  6661.  
  6662.     // --- [ glRasterPos4f ] ---
  6663.  
  6664.     /** JNI method for {@link #glRasterPos4f(float, float, float, float)} */
  6665.     public static native void nglRasterPos4f(float x, float y, float z, float w, long __functionAddress);
  6666.  
  6667.     /**
  6668.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6669.      * <p/>
  6670.      * Float version of RasterPos4i.
  6671.      *
  6672.      * @param x the {@code x} raster coordinate
  6673.      * @param y the {@code y} raster coordinate
  6674.      * @param z the {@code z} raster coordinate
  6675.      * @param w the {@code w} raster coordinate
  6676.      */
  6677.     public static void glRasterPos4f(float x, float y, float z, float w) {
  6678.         long __functionAddress = getInstance().glRasterPos4f;
  6679.         if ( LWJGLUtil.CHECKS )
  6680.             checkFunctionAddress(__functionAddress);
  6681.         nglRasterPos4f(x, y, z, w, __functionAddress);
  6682.     }
  6683.  
  6684.     // --- [ glRasterPos4d ] ---
  6685.  
  6686.     /** JNI method for {@link #glRasterPos4d(double, double, double, double)} */
  6687.     public static native void nglRasterPos4d(double x, double y, double z, double w, long __functionAddress);
  6688.  
  6689.     /**
  6690.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6691.      * <p/>
  6692.      * Double version of {@link #glRasterPos4i(int, int, int, int)}.
  6693.      *
  6694.      * @param x the {@code x} raster coordinate
  6695.      * @param y the {@code y} raster coordinate
  6696.      * @param z the {@code z} raster coordinate
  6697.      * @param w the {@code w} raster coordinate
  6698.      */
  6699.     public static void glRasterPos4d(double x, double y, double z, double w) {
  6700.         long __functionAddress = getInstance().glRasterPos4d;
  6701.         if ( LWJGLUtil.CHECKS )
  6702.             checkFunctionAddress(__functionAddress);
  6703.         nglRasterPos4d(x, y, z, w, __functionAddress);
  6704.     }
  6705.  
  6706.     // --- [ glRasterPos4iv ] ---
  6707.  
  6708.     /** JNI method for {@link #glRasterPos4i(ByteBuffer)} */
  6709.     public static native void nglRasterPos4iv(long coords, long __functionAddress);
  6710.  
  6711.     /**
  6712.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6713.      * <p/>
  6714.      * Pointer version of {@link #glRasterPos4i(int, int, int, int)}.
  6715.      *
  6716.      * @param coords the raster position buffer
  6717.      */
  6718.     public static void glRasterPos4i(ByteBuffer coords) {
  6719.         long __functionAddress = getInstance().glRasterPos4iv;
  6720.         if ( LWJGLUtil.CHECKS ) {
  6721.             checkFunctionAddress(__functionAddress);
  6722.             checkBuffer(coords, 4 << 2);
  6723.         }
  6724.         nglRasterPos4iv(memAddress(coords), __functionAddress);
  6725.     }
  6726.  
  6727.     /** Alternative version of: {@link #glRasterPos4i(ByteBuffer)} */
  6728.     public static void glRasterPos4(IntBuffer coords) {
  6729.         long __functionAddress = getInstance().glRasterPos4iv;
  6730.         if ( LWJGLUtil.CHECKS ) {
  6731.             checkFunctionAddress(__functionAddress);
  6732.             checkBuffer(coords, 4);
  6733.         }
  6734.         nglRasterPos4iv(memAddress(coords), __functionAddress);
  6735.     }
  6736.  
  6737.     // --- [ glRasterPos4sv ] ---
  6738.  
  6739.     /** JNI method for {@link #glRasterPos4s(ByteBuffer)} */
  6740.     public static native void nglRasterPos4sv(long coords, long __functionAddress);
  6741.  
  6742.     /**
  6743.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6744.      * <p/>
  6745.      * Pointer version of {@link #glRasterPos4s(short, short, short, short)}.
  6746.      *
  6747.      * @param coords the raster position buffer
  6748.      */
  6749.     public static void glRasterPos4s(ByteBuffer coords) {
  6750.         long __functionAddress = getInstance().glRasterPos4sv;
  6751.         if ( LWJGLUtil.CHECKS ) {
  6752.             checkFunctionAddress(__functionAddress);
  6753.             checkBuffer(coords, 4 << 1);
  6754.         }
  6755.         nglRasterPos4sv(memAddress(coords), __functionAddress);
  6756.     }
  6757.  
  6758.     /** Alternative version of: {@link #glRasterPos4s(ByteBuffer)} */
  6759.     public static void glRasterPos4(ShortBuffer coords) {
  6760.         long __functionAddress = getInstance().glRasterPos4sv;
  6761.         if ( LWJGLUtil.CHECKS ) {
  6762.             checkFunctionAddress(__functionAddress);
  6763.             checkBuffer(coords, 4);
  6764.         }
  6765.         nglRasterPos4sv(memAddress(coords), __functionAddress);
  6766.     }
  6767.  
  6768.     // --- [ glRasterPos4fv ] ---
  6769.  
  6770.     /** JNI method for {@link #glRasterPos4f(ByteBuffer)} */
  6771.     public static native void nglRasterPos4fv(long coords, long __functionAddress);
  6772.  
  6773.     /**
  6774.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6775.      * <p/>
  6776.      * Pointer version of {@link #glRasterPos4f(float, float, float, float)}.
  6777.      *
  6778.      * @param coords the raster position buffer
  6779.      */
  6780.     public static void glRasterPos4f(ByteBuffer coords) {
  6781.         long __functionAddress = getInstance().glRasterPos4fv;
  6782.         if ( LWJGLUtil.CHECKS ) {
  6783.             checkFunctionAddress(__functionAddress);
  6784.             checkBuffer(coords, 4 << 2);
  6785.         }
  6786.         nglRasterPos4fv(memAddress(coords), __functionAddress);
  6787.     }
  6788.  
  6789.     /** Alternative version of: {@link #glRasterPos4f(ByteBuffer)} */
  6790.     public static void glRasterPos4(FloatBuffer coords) {
  6791.         long __functionAddress = getInstance().glRasterPos4fv;
  6792.         if ( LWJGLUtil.CHECKS ) {
  6793.             checkFunctionAddress(__functionAddress);
  6794.             checkBuffer(coords, 4);
  6795.         }
  6796.         nglRasterPos4fv(memAddress(coords), __functionAddress);
  6797.     }
  6798.  
  6799.     // --- [ glRasterPos4dv ] ---
  6800.  
  6801.     /** JNI method for {@link #glRasterPos4d(ByteBuffer)} */
  6802.     public static native void nglRasterPos4dv(long coords, long __functionAddress);
  6803.  
  6804.     /**
  6805.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6806.      * <p/>
  6807.      * Pointer version of {@link #glRasterPos4d(double, double, double, double)}.
  6808.      *
  6809.      * @param coords the raster position buffer
  6810.      */
  6811.     public static void glRasterPos4d(ByteBuffer coords) {
  6812.         long __functionAddress = getInstance().glRasterPos4dv;
  6813.         if ( LWJGLUtil.CHECKS ) {
  6814.             checkFunctionAddress(__functionAddress);
  6815.             checkBuffer(coords, 4 << 3);
  6816.         }
  6817.         nglRasterPos4dv(memAddress(coords), __functionAddress);
  6818.     }
  6819.  
  6820.     /** Alternative version of: {@link #glRasterPos4d(ByteBuffer)} */
  6821.     public static void glRasterPos4(DoubleBuffer coords) {
  6822.         long __functionAddress = getInstance().glRasterPos4dv;
  6823.         if ( LWJGLUtil.CHECKS ) {
  6824.             checkFunctionAddress(__functionAddress);
  6825.             checkBuffer(coords, 4);
  6826.         }
  6827.         nglRasterPos4dv(memAddress(coords), __functionAddress);
  6828.     }
  6829.  
  6830.     // --- [ glReadBuffer ] ---
  6831.  
  6832.     /** JNI method for {@link #glReadBuffer(int)} */
  6833.     public static native void nglReadBuffer(int src, long __functionAddress);
  6834.  
  6835.     /**
  6836.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glReadBuffer.xml">OpenGL SDK Reference</a>
  6837.      * <p/>
  6838.      * Defines the color buffer from which values are obtained.
  6839.      * <p/>
  6840.      * Acceptable values for {@code src} depend on whether the GL is using the default framebuffer (i.e., {@link GL30#GL_DRAW_FRAMEBUFFER_BINDING} is zero), or
  6841.      * a framebuffer object (i.e., {@link GL30#DRAW_FRAMEBUFFER_BINDING} is non-zero). In the initial state, the GL is bound to the default framebuffer.
  6842.      *
  6843.      * @param src the color buffer to read from. One of:<p/>{@link #GL_NONE}, {@link #GL_FRONT_LEFT}, {@link #GL_FRONT_RIGHT}, {@link #GL_BACK_LEFT}, {@link #GL_BACK_RIGHT}, {@link #GL_FRONT}, {@link #GL_BACK}, {@link #GL_LEFT}, {@link #GL_RIGHT}, {@link #GL_FRONT_AND_BACK}, {@link #GL_AUX0}, {@link #GL_AUX1}, {@link #GL_AUX2}, {@link #GL_AUX3}, {@link GL30#GL_COLOR_ATTACHMENT0}, GL30.GL_COLOR_ATTACHMENT[1-15]
  6844.      */
  6845.     public static void glReadBuffer(int src) {
  6846.         long __functionAddress = getInstance().glReadBuffer;
  6847.         if ( LWJGLUtil.CHECKS )
  6848.             checkFunctionAddress(__functionAddress);
  6849.         nglReadBuffer(src, __functionAddress);
  6850.     }
  6851.  
  6852.     // --- [ glReadPixels ] ---
  6853.  
  6854.     /** JNI method for {@link #glReadPixels(int, int, int, int, int, int, ByteBuffer)} */
  6855.     public static native void nglReadPixels(int x, int y, int width, int height, int format, int type, long pixels, long __functionAddress);
  6856.  
  6857.     /**
  6858.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glReadPixels.xml">OpenGL SDK Reference</a>
  6859.      * <p/>
  6860.      * ReadPixels obtains values from the selected read buffer from each pixel with lower left hand corner at {@code (x + i, y + j)} for {@code 0 <= i < width}
  6861.      * and {@code 0 <= j < height}; this pixel is said to be the i<sup>th</sup> pixel in the j<sup>th</sup> row. If any of these pixels lies outside of the
  6862.      * window allocated to the current GL context, or outside of the image attached to the currently bound read framebuffer object, then the values obtained
  6863.      * for those pixels are undefined. When {@link #GL_READ_FRAMEBUFFER_BINDING} is zero, values are also undefined for individual pixels that are not owned by
  6864.      * the current context. Otherwise, {@code ReadPixels} obtains values from the selected buffer, regardless of how those values were placed there.
  6865.      *
  6866.      * @param x      the left pixel coordinate
  6867.      * @param y      the lower pixel coordinate
  6868.      * @param width  the number of pixels to read in the x-dimension
  6869.      * @param height the number of pixels to read in the y-dimension
  6870.      * @param format the pixel format. One of:<p/>{@link GL11#GL_STENCIL_INDEX}, {@link GL11#GL_DEPTH_COMPONENT}, {@link GL30#GL_DEPTH_STENCIL}, {@link GL11#GL_RED}, {@link GL11#GL_GREEN}, {@link GL11#GL_BLUE}, {@link GL11#GL_ALPHA}, {@link GL11#GL_RG}, {@link GL11#GL_RGB}, {@link GL11#GL_RGBA}, {@link GL11#GL_BGR}, {@link GL11#GL_BGRA}, {@link GL11#GL_LUMINANCE}, {@link GL11#GL_LUMINANCE_ALPHA}, {@link GL30#GL_RED_INTEGER}, {@link GL30#GL_GREEN_INTEGER}, {@link GL30#GL_BLUE_INTEGER}, {@link GL30#GL_ALPHA_INTEGER}, {@link GL30#GL_RG_INTEGER}, {@link GL30#GL_RGB_INTEGER}, {@link GL30#GL_RGBA_INTEGER}, {@link GL30#GL_BGR_INTEGER}, {@link GL30#GL_BGRA_INTEGER}
  6871.      * @param type   the pixel type. One of:<p/>{@link GL11#GL_UNSIGNED_BYTE}, {@link GL11#GL_BYTE}, {@link GL11#GL_UNSIGNED_SHORT}, {@link GL11#GL_SHORT}, {@link GL11#GL_UNSIGNED_INT}, {@link GL11#GL_INT}, {@link GL30#GL_HALF_FLOAT}, {@link GL11#GL_FLOAT}, {@link GL12#GL_UNSIGNED_BYTE_3_3_2}, {@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV}, {@link GL12#GL_UNSIGNED_SHORT_5_6_5}, {@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV}, {@link GL12#GL_UNSIGNED_SHORT_4_4_4_4}, {@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV}, {@link GL12#GL_UNSIGNED_SHORT_5_5_5_1}, {@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV}, {@link GL12#GL_UNSIGNED_INT_8_8_8_8}, {@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV}, {@link GL12#GL_UNSIGNED_INT_10_10_10_2}, {@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV}, {@link GL30#GL_UNSIGNED_INT_24_8}, {@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV}, {@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV}, {@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV}, {@link GL11#GL_BITMAP}
  6872.      * @param pixels an array in which to place the returned pixel data
  6873.      */
  6874.     public static void glReadPixels(int x, int y, int width, int height, int format, int type, ByteBuffer pixels) {
  6875.         long __functionAddress = getInstance().glReadPixels;
  6876.         if ( LWJGLUtil.CHECKS ) {
  6877.             checkFunctionAddress(__functionAddress);
  6878.             checkBuffer(pixels, width * height * GLChecks.getPixelBytes(format, type));
  6879.             GLChecks.ensureBufferObject(0x88ED, false);
  6880.         }
  6881.         nglReadPixels(x, y, width, height, format, type, memAddress(pixels), __functionAddress);
  6882.     }
  6883.  
  6884.     /** Buffer object offset version of: {@link #glReadPixels(int, int, int, int, int, int, ByteBuffer)} */
  6885.     public static void glReadPixels(int x, int y, int width, int height, int format, int type, long pixelsOffset) {
  6886.         long __functionAddress = getInstance().glReadPixels;
  6887.         if ( LWJGLUtil.CHECKS ) {
  6888.             checkFunctionAddress(__functionAddress);
  6889.             GLChecks.ensureBufferObject(0x88ED, true);
  6890.         }
  6891.         nglReadPixels(x, y, width, height, format, type, pixelsOffset, __functionAddress);
  6892.     }
  6893.  
  6894.     /** ShortBuffer version of: {@link #glReadPixels(int, int, int, int, int, int, ByteBuffer)} */
  6895.     public static void glReadPixels(int x, int y, int width, int height, int format, int type, ShortBuffer pixels) {
  6896.         long __functionAddress = getInstance().glReadPixels;
  6897.         if ( LWJGLUtil.CHECKS ) {
  6898.             checkFunctionAddress(__functionAddress);
  6899.             checkBuffer(pixels, (width * height * GLChecks.getPixelBytes(format, type)) >> 1);
  6900.             GLChecks.ensureBufferObject(0x88ED, false);
  6901.         }
  6902.         nglReadPixels(x, y, width, height, format, type, memAddress(pixels), __functionAddress);
  6903.     }
  6904.  
  6905.     /** IntBuffer version of: {@link #glReadPixels(int, int, int, int, int, int, ByteBuffer)} */
  6906.     public static void glReadPixels(int x, int y, int width, int height, int format, int type, IntBuffer pixels) {
  6907.         long __functionAddress = getInstance().glReadPixels;
  6908.         if ( LWJGLUtil.CHECKS ) {
  6909.             checkFunctionAddress(__functionAddress);
  6910.             checkBuffer(pixels, (width * height * GLChecks.getPixelBytes(format, type)) >> 2);
  6911.             GLChecks.ensureBufferObject(0x88ED, false);
  6912.         }
  6913.         nglReadPixels(x, y, width, height, format, type, memAddress(pixels), __functionAddress);
  6914.     }
  6915.  
  6916.     /** FloatBuffer version of: {@link #glReadPixels(int, int, int, int, int, int, ByteBuffer)} */
  6917.     public static void glReadPixels(int x, int y, int width, int height, int format, int type, FloatBuffer pixels) {
  6918.         long __functionAddress = getInstance().glReadPixels;
  6919.         if ( LWJGLUtil.CHECKS ) {
  6920.             checkFunctionAddress(__functionAddress);
  6921.             checkBuffer(pixels, (width * height * GLChecks.getPixelBytes(format, type)) >> 2);
  6922.             GLChecks.ensureBufferObject(0x88ED, false);
  6923.         }
  6924.         nglReadPixels(x, y, width, height, format, type, memAddress(pixels), __functionAddress);
  6925.     }
  6926.  
  6927.     // --- [ glRecti ] ---
  6928.  
  6929.     /** JNI method for {@link #glRecti(int, int, int, int)} */
  6930.     public static native void nglRecti(int x1, int y1, int x2, int y2, long __functionAddress);
  6931.  
  6932.     /**
  6933.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6934.      * <p/>
  6935.      * Specifies a rectangle as two corner vertices. The effect of the Rect command
  6936.      * <p/>
  6937.      * {@code Rect(x1, y1, x2, y2);}
  6938.      * <p/>
  6939.      * is exactly the same as the following sequence of commands:
  6940.      * {@code
  6941.      * Begin(POLYGON);
  6942.      * Vertex2(x1, y1);
  6943.      * Vertex2(x2, y1);
  6944.      * Vertex2(x2, y2);
  6945.      * Vertex2(x1, y2);
  6946.      * End();}
  6947.      * <p/>
  6948.      * The appropriate Vertex2 command would be invoked depending on which of the Rect commands is issued.
  6949.      *
  6950.      * @param x1 the x coordinate of the first corner vertex
  6951.      * @param y1 the y coordinate of the first corner vertex
  6952.      * @param x2 the x coordinate of the second corner vertex
  6953.      * @param y2 the y coordinate of the second corner vertex
  6954.      */
  6955.     public static void glRecti(int x1, int y1, int x2, int y2) {
  6956.         long __functionAddress = getInstance().glRecti;
  6957.         if ( LWJGLUtil.CHECKS )
  6958.             checkFunctionAddress(__functionAddress);
  6959.         nglRecti(x1, y1, x2, y2, __functionAddress);
  6960.     }
  6961.  
  6962.     // --- [ glRects ] ---
  6963.  
  6964.     /** JNI method for {@link #glRects(short, short, short, short)} */
  6965.     public static native void nglRects(short x1, short y1, short x2, short y2, long __functionAddress);
  6966.  
  6967.     /**
  6968.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6969.      * <p/>
  6970.      * Short version of {@link #glRecti(int, int, int, int)}.
  6971.      *
  6972.      * @param x1 the x coordinate of the first corner vertex
  6973.      * @param y1 the y coordinate of the first corner vertex
  6974.      * @param x2 the x coordinate of the second corner vertex
  6975.      * @param y2 the y coordinate of the second corner vertex
  6976.      */
  6977.     public static void glRects(short x1, short y1, short x2, short y2) {
  6978.         long __functionAddress = getInstance().glRects;
  6979.         if ( LWJGLUtil.CHECKS )
  6980.             checkFunctionAddress(__functionAddress);
  6981.         nglRects(x1, y1, x2, y2, __functionAddress);
  6982.     }
  6983.  
  6984.     // --- [ glRectf ] ---
  6985.  
  6986.     /** JNI method for {@link #glRectf(float, float, float, float)} */
  6987.     public static native void nglRectf(float x1, float y1, float x2, float y2, long __functionAddress);
  6988.  
  6989.     /**
  6990.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  6991.      * <p/>
  6992.      * Float version of {@link #glRecti(int, int, int, int)}.
  6993.      *
  6994.      * @param x1 the x coordinate of the first corner vertex
  6995.      * @param y1 the y coordinate of the first corner vertex
  6996.      * @param x2 the x coordinate of the second corner vertex
  6997.      * @param y2 the y coordinate of the second corner vertex
  6998.      */
  6999.     public static void glRectf(float x1, float y1, float x2, float y2) {
  7000.         long __functionAddress = getInstance().glRectf;
  7001.         if ( LWJGLUtil.CHECKS )
  7002.             checkFunctionAddress(__functionAddress);
  7003.         nglRectf(x1, y1, x2, y2, __functionAddress);
  7004.     }
  7005.  
  7006.     // --- [ glRectd ] ---
  7007.  
  7008.     /** JNI method for {@link #glRectd(double, double, double, double)} */
  7009.     public static native void nglRectd(double x1, double y1, double x2, double y2, long __functionAddress);
  7010.  
  7011.     /**
  7012.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7013.      * <p/>
  7014.      * Double version of {@link #glRecti(int, int, int, int)}.
  7015.      *
  7016.      * @param x1 the x coordinate of the first corner vertex
  7017.      * @param y1 the y coordinate of the first corner vertex
  7018.      * @param x2 the x coordinate of the second corner vertex
  7019.      * @param y2 the y coordinate of the second corner vertex
  7020.      */
  7021.     public static void glRectd(double x1, double y1, double x2, double y2) {
  7022.         long __functionAddress = getInstance().glRectd;
  7023.         if ( LWJGLUtil.CHECKS )
  7024.             checkFunctionAddress(__functionAddress);
  7025.         nglRectd(x1, y1, x2, y2, __functionAddress);
  7026.     }
  7027.  
  7028.     // --- [ glRectiv ] ---
  7029.  
  7030.     /** JNI method for {@link #glRecti(ByteBuffer, ByteBuffer)} */
  7031.     public static native void nglRectiv(long v1, long v2, long __functionAddress);
  7032.  
  7033.     /**
  7034.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7035.      * <p/>
  7036.      * Pointer version of {@link #glRecti(int, int, int, int)}.
  7037.      *
  7038.      * @param v1 the first vertex buffer
  7039.      * @param v2 the second vertex buffer
  7040.      */
  7041.     public static void glRecti(ByteBuffer v1, ByteBuffer v2) {
  7042.         long __functionAddress = getInstance().glRectiv;
  7043.         if ( LWJGLUtil.CHECKS ) {
  7044.             checkFunctionAddress(__functionAddress);
  7045.             checkBuffer(v1, 2 << 2);
  7046.             checkBuffer(v2, 2 << 2);
  7047.         }
  7048.         nglRectiv(memAddress(v1), memAddress(v2), __functionAddress);
  7049.     }
  7050.  
  7051.     /** Alternative version of: {@link #glRecti(ByteBuffer, ByteBuffer)} */
  7052.     public static void glRect(IntBuffer v1, IntBuffer v2) {
  7053.         long __functionAddress = getInstance().glRectiv;
  7054.         if ( LWJGLUtil.CHECKS ) {
  7055.             checkFunctionAddress(__functionAddress);
  7056.             checkBuffer(v1, 2);
  7057.             checkBuffer(v2, 2);
  7058.         }
  7059.         nglRectiv(memAddress(v1), memAddress(v2), __functionAddress);
  7060.     }
  7061.  
  7062.     // --- [ glRectsv ] ---
  7063.  
  7064.     /** JNI method for {@link #glRects(ByteBuffer, ByteBuffer)} */
  7065.     public static native void nglRectsv(long v1, long v2, long __functionAddress);
  7066.  
  7067.     /**
  7068.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7069.      * <p/>
  7070.      * Pointer version of {@link #glRects(short, short, short, short)}.
  7071.      *
  7072.      * @param v1 the first vertex buffer
  7073.      * @param v2 the second vertex buffer
  7074.      */
  7075.     public static void glRects(ByteBuffer v1, ByteBuffer v2) {
  7076.         long __functionAddress = getInstance().glRectsv;
  7077.         if ( LWJGLUtil.CHECKS ) {
  7078.             checkFunctionAddress(__functionAddress);
  7079.             checkBuffer(v1, 2 << 1);
  7080.             checkBuffer(v2, 2 << 1);
  7081.         }
  7082.         nglRectsv(memAddress(v1), memAddress(v2), __functionAddress);
  7083.     }
  7084.  
  7085.     /** Alternative version of: {@link #glRects(ByteBuffer, ByteBuffer)} */
  7086.     public static void glRect(ShortBuffer v1, ShortBuffer v2) {
  7087.         long __functionAddress = getInstance().glRectsv;
  7088.         if ( LWJGLUtil.CHECKS ) {
  7089.             checkFunctionAddress(__functionAddress);
  7090.             checkBuffer(v1, 2);
  7091.             checkBuffer(v2, 2);
  7092.         }
  7093.         nglRectsv(memAddress(v1), memAddress(v2), __functionAddress);
  7094.     }
  7095.  
  7096.     // --- [ glRectfv ] ---
  7097.  
  7098.     /** JNI method for {@link #glRectf(ByteBuffer, ByteBuffer)} */
  7099.     public static native void nglRectfv(long v1, long v2, long __functionAddress);
  7100.  
  7101.     /**
  7102.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7103.      * <p/>
  7104.      * Pointer version of {@link #glRectf(float, float, float, float)}.
  7105.      *
  7106.      * @param v1 the first vertex buffer
  7107.      * @param v2 the second vertex buffer
  7108.      */
  7109.     public static void glRectf(ByteBuffer v1, ByteBuffer v2) {
  7110.         long __functionAddress = getInstance().glRectfv;
  7111.         if ( LWJGLUtil.CHECKS ) {
  7112.             checkFunctionAddress(__functionAddress);
  7113.             checkBuffer(v1, 2 << 2);
  7114.             checkBuffer(v2, 2 << 2);
  7115.         }
  7116.         nglRectfv(memAddress(v1), memAddress(v2), __functionAddress);
  7117.     }
  7118.  
  7119.     /** Alternative version of: {@link #glRectf(ByteBuffer, ByteBuffer)} */
  7120.     public static void glRect(FloatBuffer v1, FloatBuffer v2) {
  7121.         long __functionAddress = getInstance().glRectfv;
  7122.         if ( LWJGLUtil.CHECKS ) {
  7123.             checkFunctionAddress(__functionAddress);
  7124.             checkBuffer(v1, 2);
  7125.             checkBuffer(v2, 2);
  7126.         }
  7127.         nglRectfv(memAddress(v1), memAddress(v2), __functionAddress);
  7128.     }
  7129.  
  7130.     // --- [ glRectdv ] ---
  7131.  
  7132.     /** JNI method for {@link #glRectd(ByteBuffer, ByteBuffer)} */
  7133.     public static native void nglRectdv(long v1, long v2, long __functionAddress);
  7134.  
  7135.     /**
  7136.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7137.      * <p/>
  7138.      * Pointer version of {@link #glRectd(double, double, double, double)}.
  7139.      *
  7140.      * @param v1 the first vertex buffer
  7141.      * @param v2 the second vertex buffer
  7142.      */
  7143.     public static void glRectd(ByteBuffer v1, ByteBuffer v2) {
  7144.         long __functionAddress = getInstance().glRectdv;
  7145.         if ( LWJGLUtil.CHECKS ) {
  7146.             checkFunctionAddress(__functionAddress);
  7147.             checkBuffer(v1, 2 << 3);
  7148.             checkBuffer(v2, 2 << 3);
  7149.         }
  7150.         nglRectdv(memAddress(v1), memAddress(v2), __functionAddress);
  7151.     }
  7152.  
  7153.     /** Alternative version of: {@link #glRectd(ByteBuffer, ByteBuffer)} */
  7154.     public static void glRect(DoubleBuffer v1, DoubleBuffer v2) {
  7155.         long __functionAddress = getInstance().glRectdv;
  7156.         if ( LWJGLUtil.CHECKS ) {
  7157.             checkFunctionAddress(__functionAddress);
  7158.             checkBuffer(v1, 2);
  7159.             checkBuffer(v2, 2);
  7160.         }
  7161.         nglRectdv(memAddress(v1), memAddress(v2), __functionAddress);
  7162.     }
  7163.  
  7164.     // --- [ glRenderMode ] ---
  7165.  
  7166.     /** JNI method for {@link #glRenderMode(int)} */
  7167.     public static native int nglRenderMode(int mode, long __functionAddress);
  7168.  
  7169.     /**
  7170.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7171.      * <p/>
  7172.      * Sets the current render mode. The default is #GL_RENDER.
  7173.      *
  7174.      * @param mode the render mode. One of:<p/>{@link #GL_RENDER}, {@link #GL_SELECT}, {@link #GL_FEEDBACK}
  7175.      */
  7176.     public static int glRenderMode(int mode) {
  7177.         long __functionAddress = getInstance().glRenderMode;
  7178.         if ( LWJGLUtil.CHECKS )
  7179.             checkFunctionAddress(__functionAddress);
  7180.         return nglRenderMode(mode, __functionAddress);
  7181.     }
  7182.  
  7183.     // --- [ glRotatef ] ---
  7184.  
  7185.     /** JNI method for {@link #glRotatef(float, float, float, float)} */
  7186.     public static native void nglRotatef(float angle, float x, float y, float z, long __functionAddress);
  7187.  
  7188.     /**
  7189.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7190.      * <p/>
  7191.      * Manipulates the current matrix with a rotation matrix.
  7192.      * <p/>
  7193.      * {@code angle} gives an angle of rotation in degrees; the coordinates of a vector v are given by <code>v = (x y z)<sup>T</sup></code>. The computed matrix
  7194.      * is a counter-clockwise rotation about the line through the origin with the specified axis when that axis is pointing up (i.e. the right-hand rule
  7195.      * determines the sense of the rotation angle). The matrix is thus
  7196.      * <table border="1" cellspacing="0" cellpadding="2"><tr align="center"><td colspan="3" rowspan="3"><b>R</b></td><td>0</td></tr><tr align="center"><td>0</td></tr><tr align="center"><td>0</td></tr><tr align="center"><td>0</td><td>0</td><td>0</td><td>1</td></tr></table>
  7197.      * <p/>
  7198.      * Let <code>u = v / ||v|| = (x' y' z')<sup>T</sup></code>. If <b>S</b> =
  7199.      * <table border="1" cellspacing="0" cellpadding="2"><tr align="center"><td>0</td><td>-z'</td><td>y'</td></tr><tr align="center"><td>z'</td><td>0</td><td>-x'</td></tr><tr align="center"><td>-y'</td><td>x'</td><td>0</td></tr></table>
  7200.      * <p/>
  7201.      * then <code><b>R</b> = uu<sup>T</sup> + cos(angle)(I - uu<sup>T</sup>) + sin(angle)<b>S</b></code>
  7202.      *
  7203.      * @param angle the angle of rotation in degrees
  7204.      * @param x     the x coordinate of the rotation vector
  7205.      * @param y     the y coordinate of the rotation vector
  7206.      * @param z     the z coordinate of the rotation vector
  7207.      */
  7208.     public static void glRotatef(float angle, float x, float y, float z) {
  7209.         long __functionAddress = getInstance().glRotatef;
  7210.         if ( LWJGLUtil.CHECKS )
  7211.             checkFunctionAddress(__functionAddress);
  7212.         nglRotatef(angle, x, y, z, __functionAddress);
  7213.     }
  7214.  
  7215.     // --- [ glRotated ] ---
  7216.  
  7217.     /** JNI method for {@link #glRotated(double, double, double, double)} */
  7218.     public static native void nglRotated(double angle, double x, double y, double z, long __functionAddress);
  7219.  
  7220.     /**
  7221.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7222.      * <p/>
  7223.      * Double version of {@link #glRotatef(float, float, float, float)}.
  7224.      *
  7225.      * @param angle the angle of rotation in degrees
  7226.      * @param x     the x coordinate of the rotation vector
  7227.      * @param y     the y coordinate of the rotation vector
  7228.      * @param z     the z coordinate of the rotation vector
  7229.      */
  7230.     public static void glRotated(double angle, double x, double y, double z) {
  7231.         long __functionAddress = getInstance().glRotated;
  7232.         if ( LWJGLUtil.CHECKS )
  7233.             checkFunctionAddress(__functionAddress);
  7234.         nglRotated(angle, x, y, z, __functionAddress);
  7235.     }
  7236.  
  7237.     // --- [ glScalef ] ---
  7238.  
  7239.     /** JNI method for {@link #glScalef(float, float, float)} */
  7240.     public static native void nglScalef(float x, float y, float z, long __functionAddress);
  7241.  
  7242.     /**
  7243.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7244.      * <p/>
  7245.      * Manipulates the current matrix with a general scaling matrix along the x-, y- and z- axes.
  7246.      * <p/>
  7247.      * Calling this function is equivalent to calling {@link #glMultMatrixf(ByteBuffer)} with the following matrix:
  7248.      * <table border="1" cellspacing="0" cellpadding="2"><tr align="center"><td>x</td><td>0</td><td>0</td><td>0</td></tr><tr align="center"><td>0</td><td>y</td><td>0</td><td>0</td></tr><tr align="center"><td>0</td><td>0</td><td>z</td><td>0</td></tr><tr align="center"><td>0</td><td>0</td><td>0</td><td>1</td></tr></table>
  7249.      *
  7250.      * @param x the x-axis scaling factor
  7251.      * @param y the y-axis scaling factor
  7252.      * @param z the z-axis scaling factor
  7253.      */
  7254.     public static void glScalef(float x, float y, float z) {
  7255.         long __functionAddress = getInstance().glScalef;
  7256.         if ( LWJGLUtil.CHECKS )
  7257.             checkFunctionAddress(__functionAddress);
  7258.         nglScalef(x, y, z, __functionAddress);
  7259.     }
  7260.  
  7261.     // --- [ glScaled ] ---
  7262.  
  7263.     /** JNI method for {@link #glScaled(double, double, double)} */
  7264.     public static native void nglScaled(double x, double y, double z, long __functionAddress);
  7265.  
  7266.     /**
  7267.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7268.      * <p/>
  7269.      * Double version of {@link #glScalef(float, float, float)}.
  7270.      *
  7271.      * @param x the x-axis scaling factor
  7272.      * @param y the y-axis scaling factor
  7273.      * @param z the z-axis scaling factor
  7274.      */
  7275.     public static void glScaled(double x, double y, double z) {
  7276.         long __functionAddress = getInstance().glScaled;
  7277.         if ( LWJGLUtil.CHECKS )
  7278.             checkFunctionAddress(__functionAddress);
  7279.         nglScaled(x, y, z, __functionAddress);
  7280.     }
  7281.  
  7282.     // --- [ glScissor ] ---
  7283.  
  7284.     /** JNI method for {@link #glScissor(int, int, int, int)} */
  7285.     public static native void nglScissor(int x, int y, int width, int height, long __functionAddress);
  7286.  
  7287.     /**
  7288.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glScissor.xml">OpenGL SDK Reference</a>
  7289.      * <p/>
  7290.      * Defines the scissor rectangle for all viewports. The scissor test is enabled or disabled for all viewports using {@link #glEnable(int)} or {@link #glDisable(int)}
  7291.      * with the symbolic constant {@link #GL_SCISSOR_TEST}. When disabled, it is as if the scissor test always passes. When enabled, if
  7292.      * <code>left <= x<sub>w</sub> < left + width</code> and <code>bottom <= y<sub>w</sub> < bottom + height</code> for the scissor rectangle, then the scissor
  7293.      * test passes. Otherwise, the test fails and the fragment is discarded.
  7294.      *
  7295.      * @param x      the left scissor rectangle coordinate
  7296.      * @param y      the bottom scissor rectangle coordinate
  7297.      * @param width  the scissor rectangle width
  7298.      * @param height the scissor rectangle height
  7299.      */
  7300.     public static void glScissor(int x, int y, int width, int height) {
  7301.         long __functionAddress = getInstance().glScissor;
  7302.         if ( LWJGLUtil.CHECKS )
  7303.             checkFunctionAddress(__functionAddress);
  7304.         nglScissor(x, y, width, height, __functionAddress);
  7305.     }
  7306.  
  7307.     // --- [ glSelectBuffer ] ---
  7308.  
  7309.     /** JNI method for {@link #glSelectBuffer(int, ByteBuffer)} */
  7310.     public static native void nglSelectBuffer(int size, long buffer, long __functionAddress);
  7311.  
  7312.     /**
  7313.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7314.      * <p/>
  7315.      * Sets the selection array.
  7316.      *
  7317.      * @param size   the maximum number of values that can be stored in {@code buffer}
  7318.      * @param buffer an array of unsigned integers to be potentially filled names
  7319.      */
  7320.     public static void glSelectBuffer(int size, ByteBuffer buffer) {
  7321.         long __functionAddress = getInstance().glSelectBuffer;
  7322.         if ( LWJGLUtil.CHECKS ) {
  7323.             checkFunctionAddress(__functionAddress);
  7324.             checkBuffer(buffer, size << 2);
  7325.         }
  7326.         nglSelectBuffer(size, memAddress(buffer), __functionAddress);
  7327.     }
  7328.  
  7329.     /** Alternative version of: {@link #glSelectBuffer(int, ByteBuffer)} */
  7330.     public static void glSelectBuffer(IntBuffer buffer) {
  7331.         long __functionAddress = getInstance().glSelectBuffer;
  7332.         if ( LWJGLUtil.CHECKS )
  7333.             checkFunctionAddress(__functionAddress);
  7334.         nglSelectBuffer(buffer.remaining(), memAddress(buffer), __functionAddress);
  7335.     }
  7336.  
  7337.     // --- [ glShadeModel ] ---
  7338.  
  7339.     /** JNI method for {@link #glShadeModel(int)} */
  7340.     public static native void nglShadeModel(int mode, long __functionAddress);
  7341.  
  7342.     /**
  7343.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7344.      * <p/>
  7345.      * Sets the current shade mode. The initial value of the shade mode is {@link #GL_SMOOTH}.
  7346.      * <p/>
  7347.      * If mode is {@link #GL_SMOOTH}, vertex colors are treated individually. If mode is {@link #GL_FLAT}, flatshading is enabled and colors are taken from the
  7348.      * provoking vertex of the primitive. The colors selected are those derived from current values, generated by lighting, or generated by vertex shading, if
  7349.      * lighting is disabled, enabled, or a vertex shader is in use, respectively.
  7350.      *
  7351.      * @param mode the shade mode. One of:<p/>{@link #GL_SMOOTH}, {@link #GL_FLAT}
  7352.      */
  7353.     public static void glShadeModel(int mode) {
  7354.         long __functionAddress = getInstance().glShadeModel;
  7355.         if ( LWJGLUtil.CHECKS )
  7356.             checkFunctionAddress(__functionAddress);
  7357.         nglShadeModel(mode, __functionAddress);
  7358.     }
  7359.  
  7360.     // --- [ glStencilFunc ] ---
  7361.  
  7362.     /** JNI method for {@link #glStencilFunc(int, int, int)} */
  7363.     public static native void nglStencilFunc(int func, int ref, int mask, long __functionAddress);
  7364.  
  7365.     /**
  7366.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glStencilFunc.xml">OpenGL SDK Reference</a>
  7367.      * <p/>
  7368.      * Controls the stencil test.
  7369.      * <p/>
  7370.      * {@code ref} is an integer reference value that is used in the unsigned stencil comparison. Stencil comparison operations and queries of {@code ref}
  7371.      * clamp its value to the range [0, 2<sup>s</sup> &ndash; 1], where s is the number of bits in the stencil buffer attached to the draw framebuffer. The s
  7372.      * least significant bits of {@code mask} are bitwise ANDed with both the reference and the stored stencil value, and the resulting masked values are those that
  7373.      * participate in the comparison controlled by {@code func}.
  7374.      *
  7375.      * @param func the stencil comparison function. One of:<p/>{@link #GL_NEVER}, {@link #GL_ALWAYS}, {@link #GL_LESS}, {@link #GL_LEQUAL}, {@link #GL_EQUAL}, {@link #GL_GEQUAL}, {@link #GL_GREATER}, {@link #GL_NOTEQUAL}
  7376.      * @param ref  the reference value
  7377.      * @param mask the stencil comparison mask
  7378.      */
  7379.     public static void glStencilFunc(int func, int ref, int mask) {
  7380.         long __functionAddress = getInstance().glStencilFunc;
  7381.         if ( LWJGLUtil.CHECKS )
  7382.             checkFunctionAddress(__functionAddress);
  7383.         nglStencilFunc(func, ref, mask, __functionAddress);
  7384.     }
  7385.  
  7386.     // --- [ glStencilMask ] ---
  7387.  
  7388.     /** JNI method for {@link #glStencilMask(int)} */
  7389.     public static native void nglStencilMask(int mask, long __functionAddress);
  7390.  
  7391.     /**
  7392.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glStencilMask.xml">OpenGL SDK Reference</a>
  7393.      * <p/>
  7394.      * Masks the writing of particular bits into the stencil plans.
  7395.      * <p/>
  7396.      * The least significant s bits of {@code mask}, where s is the number of bits in the stencil buffer, specify an integer mask. Where a 1 appears in this
  7397.      * mask, the corresponding bit in the stencil buffer is written; where a 0 appears, the bit is not written.
  7398.      *
  7399.      * @param mask the stencil mask
  7400.      */
  7401.     public static void glStencilMask(int mask) {
  7402.         long __functionAddress = getInstance().glStencilMask;
  7403.         if ( LWJGLUtil.CHECKS )
  7404.             checkFunctionAddress(__functionAddress);
  7405.         nglStencilMask(mask, __functionAddress);
  7406.     }
  7407.  
  7408.     // --- [ glStencilOp ] ---
  7409.  
  7410.     /** JNI method for {@link #glStencilOp(int, int, int)} */
  7411.     public static native void nglStencilOp(int sfail, int dpfail, int dppass, long __functionAddress);
  7412.  
  7413.     /**
  7414.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glStencilOp.xml">OpenGL SDK Reference</a>
  7415.      * <p/>
  7416.      * Indicates what happens to the stored stencil value if this or certain subsequent tests fail or pass.
  7417.      * <p/>
  7418.      * The supported actions are {@link #GL_KEEP}, {@link #GL_ZERO}, {@link #GL_REPLACE}, {@link #GL_INCR}, {@link #GL_DECR}, {@link #GL_INVERT},
  7419.      * {@link #GL_INCR_WRAP} and {@link #GL_DECR_WRAP}. These correspond to keeping the current value, setting to zero, replacing with the reference value,
  7420.      * incrementing with saturation, decrementing with saturation, bitwise inverting it, incrementing without saturation, and decrementing without saturation.
  7421.      * <p/>
  7422.      * For purposes of increment and decrement, the stencil bits are considered as an unsigned integer. Incrementing or decrementing with saturation clamps
  7423.      * the stencil value at 0 and the maximum representable value. Incrementing or decrementing without saturation will wrap such that incrementing the maximum
  7424.      * representable value results in 0, and decrementing 0 results in the maximum representable value.
  7425.      *
  7426.      * @param sfail  the action to take if the stencil test fails
  7427.      * @param dpfail the action to take if the depth buffer test fails
  7428.      * @param dppass the action to take if the depth buffer test passes
  7429.      */
  7430.     public static void glStencilOp(int sfail, int dpfail, int dppass) {
  7431.         long __functionAddress = getInstance().glStencilOp;
  7432.         if ( LWJGLUtil.CHECKS )
  7433.             checkFunctionAddress(__functionAddress);
  7434.         nglStencilOp(sfail, dpfail, dppass, __functionAddress);
  7435.     }
  7436.  
  7437.     // --- [ glTexCoord1f ] ---
  7438.  
  7439.     /** JNI method for {@link #glTexCoord1f(float)} */
  7440.     public static native void nglTexCoord1f(float s, long __functionAddress);
  7441.  
  7442.     /**
  7443.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7444.      * <p/>
  7445.      * Sets the current one-dimensional texture coordinate. {@code t} and {@code r} are implicitly set to 0 and {@code q} to 1.
  7446.      *
  7447.      * @param s the s component of the current texture coordinates
  7448.      */
  7449.     public static void glTexCoord1f(float s) {
  7450.         long __functionAddress = getInstance().glTexCoord1f;
  7451.         if ( LWJGLUtil.CHECKS )
  7452.             checkFunctionAddress(__functionAddress);
  7453.         nglTexCoord1f(s, __functionAddress);
  7454.     }
  7455.  
  7456.     // --- [ glTexCoord1s ] ---
  7457.  
  7458.     /** JNI method for {@link #glTexCoord1s(short)} */
  7459.     public static native void nglTexCoord1s(short s, long __functionAddress);
  7460.  
  7461.     /**
  7462.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7463.      * <p/>
  7464.      * Short version of {@link #glTexCoord1f(float)}.
  7465.      *
  7466.      * @param s the s component of the current texture coordinates
  7467.      */
  7468.     public static void glTexCoord1s(short s) {
  7469.         long __functionAddress = getInstance().glTexCoord1s;
  7470.         if ( LWJGLUtil.CHECKS )
  7471.             checkFunctionAddress(__functionAddress);
  7472.         nglTexCoord1s(s, __functionAddress);
  7473.     }
  7474.  
  7475.     // --- [ glTexCoord1i ] ---
  7476.  
  7477.     /** JNI method for {@link #glTexCoord1i(int)} */
  7478.     public static native void nglTexCoord1i(int s, long __functionAddress);
  7479.  
  7480.     /**
  7481.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7482.      * <p/>
  7483.      * Integer version of {@link #glTexCoord1f(float)}.
  7484.      *
  7485.      * @param s the s component of the current texture coordinates
  7486.      */
  7487.     public static void glTexCoord1i(int s) {
  7488.         long __functionAddress = getInstance().glTexCoord1i;
  7489.         if ( LWJGLUtil.CHECKS )
  7490.             checkFunctionAddress(__functionAddress);
  7491.         nglTexCoord1i(s, __functionAddress);
  7492.     }
  7493.  
  7494.     // --- [ glTexCoord1d ] ---
  7495.  
  7496.     /** JNI method for {@link #glTexCoord1d(double)} */
  7497.     public static native void nglTexCoord1d(double s, long __functionAddress);
  7498.  
  7499.     /**
  7500.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7501.      * <p/>
  7502.      * Double version of {@link #glTexCoord1f(float)}.
  7503.      *
  7504.      * @param s the s component of the current texture coordinates
  7505.      */
  7506.     public static void glTexCoord1d(double s) {
  7507.         long __functionAddress = getInstance().glTexCoord1d;
  7508.         if ( LWJGLUtil.CHECKS )
  7509.             checkFunctionAddress(__functionAddress);
  7510.         nglTexCoord1d(s, __functionAddress);
  7511.     }
  7512.  
  7513.     // --- [ glTexCoord1fv ] ---
  7514.  
  7515.     /** JNI method for {@link #glTexCoord1f(ByteBuffer)} */
  7516.     public static native void nglTexCoord1fv(long v, long __functionAddress);
  7517.  
  7518.     /**
  7519.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7520.      * <p/>
  7521.      * Pointer version of {@link #glTexCoord1f(float)}.
  7522.      *
  7523.      * @param v the texture coordinate buffer
  7524.      */
  7525.     public static void glTexCoord1f(ByteBuffer v) {
  7526.         long __functionAddress = getInstance().glTexCoord1fv;
  7527.         if ( LWJGLUtil.CHECKS ) {
  7528.             checkFunctionAddress(__functionAddress);
  7529.             checkBuffer(v, 1 << 2);
  7530.         }
  7531.         nglTexCoord1fv(memAddress(v), __functionAddress);
  7532.     }
  7533.  
  7534.     /** Alternative version of: {@link #glTexCoord1f(ByteBuffer)} */
  7535.     public static void glTexCoord1(FloatBuffer v) {
  7536.         long __functionAddress = getInstance().glTexCoord1fv;
  7537.         if ( LWJGLUtil.CHECKS ) {
  7538.             checkFunctionAddress(__functionAddress);
  7539.             checkBuffer(v, 1);
  7540.         }
  7541.         nglTexCoord1fv(memAddress(v), __functionAddress);
  7542.     }
  7543.  
  7544.     // --- [ glTexCoord1sv ] ---
  7545.  
  7546.     /** JNI method for {@link #glTexCoord1s(ByteBuffer)} */
  7547.     public static native void nglTexCoord1sv(long v, long __functionAddress);
  7548.  
  7549.     /**
  7550.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7551.      * <p/>
  7552.      * Pointer version of {@link #glTexCoord1s(short)}.
  7553.      *
  7554.      * @param v the texture coordinate buffer
  7555.      */
  7556.     public static void glTexCoord1s(ByteBuffer v) {
  7557.         long __functionAddress = getInstance().glTexCoord1sv;
  7558.         if ( LWJGLUtil.CHECKS ) {
  7559.             checkFunctionAddress(__functionAddress);
  7560.             checkBuffer(v, 1 << 1);
  7561.         }
  7562.         nglTexCoord1sv(memAddress(v), __functionAddress);
  7563.     }
  7564.  
  7565.     /** Alternative version of: {@link #glTexCoord1s(ByteBuffer)} */
  7566.     public static void glTexCoord1(ShortBuffer v) {
  7567.         long __functionAddress = getInstance().glTexCoord1sv;
  7568.         if ( LWJGLUtil.CHECKS ) {
  7569.             checkFunctionAddress(__functionAddress);
  7570.             checkBuffer(v, 1);
  7571.         }
  7572.         nglTexCoord1sv(memAddress(v), __functionAddress);
  7573.     }
  7574.  
  7575.     // --- [ glTexCoord1iv ] ---
  7576.  
  7577.     /** JNI method for {@link #glTexCoord1i(ByteBuffer)} */
  7578.     public static native void nglTexCoord1iv(long v, long __functionAddress);
  7579.  
  7580.     /**
  7581.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7582.      * <p/>
  7583.      * Pointer version of {@link #glTexCoord1i(int)}.
  7584.      *
  7585.      * @param v the texture coordinate buffer
  7586.      */
  7587.     public static void glTexCoord1i(ByteBuffer v) {
  7588.         long __functionAddress = getInstance().glTexCoord1iv;
  7589.         if ( LWJGLUtil.CHECKS ) {
  7590.             checkFunctionAddress(__functionAddress);
  7591.             checkBuffer(v, 1 << 2);
  7592.         }
  7593.         nglTexCoord1iv(memAddress(v), __functionAddress);
  7594.     }
  7595.  
  7596.     /** Alternative version of: {@link #glTexCoord1i(ByteBuffer)} */
  7597.     public static void glTexCoord1(IntBuffer v) {
  7598.         long __functionAddress = getInstance().glTexCoord1iv;
  7599.         if ( LWJGLUtil.CHECKS ) {
  7600.             checkFunctionAddress(__functionAddress);
  7601.             checkBuffer(v, 1);
  7602.         }
  7603.         nglTexCoord1iv(memAddress(v), __functionAddress);
  7604.     }
  7605.  
  7606.     // --- [ glTexCoord1dv ] ---
  7607.  
  7608.     /** JNI method for {@link #glTexCoord1d(ByteBuffer)} */
  7609.     public static native void nglTexCoord1dv(long v, long __functionAddress);
  7610.  
  7611.     /**
  7612.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7613.      * <p/>
  7614.      * Pointer version of {@link #glTexCoord1d(double)}.
  7615.      *
  7616.      * @param v the texture coordinate buffer
  7617.      */
  7618.     public static void glTexCoord1d(ByteBuffer v) {
  7619.         long __functionAddress = getInstance().glTexCoord1dv;
  7620.         if ( LWJGLUtil.CHECKS ) {
  7621.             checkFunctionAddress(__functionAddress);
  7622.             checkBuffer(v, 1 << 3);
  7623.         }
  7624.         nglTexCoord1dv(memAddress(v), __functionAddress);
  7625.     }
  7626.  
  7627.     /** Alternative version of: {@link #glTexCoord1d(ByteBuffer)} */
  7628.     public static void glTexCoord1(DoubleBuffer v) {
  7629.         long __functionAddress = getInstance().glTexCoord1dv;
  7630.         if ( LWJGLUtil.CHECKS ) {
  7631.             checkFunctionAddress(__functionAddress);
  7632.             checkBuffer(v, 1);
  7633.         }
  7634.         nglTexCoord1dv(memAddress(v), __functionAddress);
  7635.     }
  7636.  
  7637.     // --- [ glTexCoord2f ] ---
  7638.  
  7639.     /** JNI method for {@link #glTexCoord2f(float, float)} */
  7640.     public static native void nglTexCoord2f(float s, float t, long __functionAddress);
  7641.  
  7642.     /**
  7643.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7644.      * <p/>
  7645.      * Sets the current two-dimensional texture coordinate. {@code r} is implicitly set to 0 and {@code q} to 1.
  7646.      *
  7647.      * @param s the s component of the current texture coordinates
  7648.      * @param t the t component of the current texture coordinates
  7649.      */
  7650.     public static void glTexCoord2f(float s, float t) {
  7651.         long __functionAddress = getInstance().glTexCoord2f;
  7652.         if ( LWJGLUtil.CHECKS )
  7653.             checkFunctionAddress(__functionAddress);
  7654.         nglTexCoord2f(s, t, __functionAddress);
  7655.     }
  7656.  
  7657.     // --- [ glTexCoord2s ] ---
  7658.  
  7659.     /** JNI method for {@link #glTexCoord2s(short, short)} */
  7660.     public static native void nglTexCoord2s(short s, short t, long __functionAddress);
  7661.  
  7662.     /**
  7663.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7664.      * <p/>
  7665.      * Short version of {@link #glTexCoord2f(float, float)}.
  7666.      *
  7667.      * @param s the s component of the current texture coordinates
  7668.      * @param t the t component of the current texture coordinates
  7669.      */
  7670.     public static void glTexCoord2s(short s, short t) {
  7671.         long __functionAddress = getInstance().glTexCoord2s;
  7672.         if ( LWJGLUtil.CHECKS )
  7673.             checkFunctionAddress(__functionAddress);
  7674.         nglTexCoord2s(s, t, __functionAddress);
  7675.     }
  7676.  
  7677.     // --- [ glTexCoord2i ] ---
  7678.  
  7679.     /** JNI method for {@link #glTexCoord2i(int, int)} */
  7680.     public static native void nglTexCoord2i(int s, int t, long __functionAddress);
  7681.  
  7682.     /**
  7683.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7684.      * <p/>
  7685.      * Integer version of {@link #glTexCoord2f(float, float)}.
  7686.      *
  7687.      * @param s the s component of the current texture coordinates
  7688.      * @param t the t component of the current texture coordinates
  7689.      */
  7690.     public static void glTexCoord2i(int s, int t) {
  7691.         long __functionAddress = getInstance().glTexCoord2i;
  7692.         if ( LWJGLUtil.CHECKS )
  7693.             checkFunctionAddress(__functionAddress);
  7694.         nglTexCoord2i(s, t, __functionAddress);
  7695.     }
  7696.  
  7697.     // --- [ glTexCoord2d ] ---
  7698.  
  7699.     /** JNI method for {@link #glTexCoord2d(double, double)} */
  7700.     public static native void nglTexCoord2d(double s, double t, long __functionAddress);
  7701.  
  7702.     /**
  7703.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7704.      * <p/>
  7705.      * Double version of {@link #glTexCoord2f(float, float)}.
  7706.      *
  7707.      * @param s the s component of the current texture coordinates
  7708.      * @param t the t component of the current texture coordinates
  7709.      */
  7710.     public static void glTexCoord2d(double s, double t) {
  7711.         long __functionAddress = getInstance().glTexCoord2d;
  7712.         if ( LWJGLUtil.CHECKS )
  7713.             checkFunctionAddress(__functionAddress);
  7714.         nglTexCoord2d(s, t, __functionAddress);
  7715.     }
  7716.  
  7717.     // --- [ glTexCoord2fv ] ---
  7718.  
  7719.     /** JNI method for {@link #glTexCoord2f(ByteBuffer)} */
  7720.     public static native void nglTexCoord2fv(long v, long __functionAddress);
  7721.  
  7722.     /**
  7723.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7724.      * <p/>
  7725.      * Pointer version of {@link #glTexCoord2f(float, float)}.
  7726.      *
  7727.      * @param v the texture coordinate buffer
  7728.      */
  7729.     public static void glTexCoord2f(ByteBuffer v) {
  7730.         long __functionAddress = getInstance().glTexCoord2fv;
  7731.         if ( LWJGLUtil.CHECKS ) {
  7732.             checkFunctionAddress(__functionAddress);
  7733.             checkBuffer(v, 2 << 2);
  7734.         }
  7735.         nglTexCoord2fv(memAddress(v), __functionAddress);
  7736.     }
  7737.  
  7738.     /** Alternative version of: {@link #glTexCoord2f(ByteBuffer)} */
  7739.     public static void glTexCoord2(FloatBuffer v) {
  7740.         long __functionAddress = getInstance().glTexCoord2fv;
  7741.         if ( LWJGLUtil.CHECKS ) {
  7742.             checkFunctionAddress(__functionAddress);
  7743.             checkBuffer(v, 2);
  7744.         }
  7745.         nglTexCoord2fv(memAddress(v), __functionAddress);
  7746.     }
  7747.  
  7748.     // --- [ glTexCoord2sv ] ---
  7749.  
  7750.     /** JNI method for {@link #glTexCoord2s(ByteBuffer)} */
  7751.     public static native void nglTexCoord2sv(long v, long __functionAddress);
  7752.  
  7753.     /**
  7754.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7755.      * <p/>
  7756.      * Pointer version of {@link #glTexCoord2s(short, short)}.
  7757.      *
  7758.      * @param v the texture coordinate buffer
  7759.      */
  7760.     public static void glTexCoord2s(ByteBuffer v) {
  7761.         long __functionAddress = getInstance().glTexCoord2sv;
  7762.         if ( LWJGLUtil.CHECKS ) {
  7763.             checkFunctionAddress(__functionAddress);
  7764.             checkBuffer(v, 2 << 1);
  7765.         }
  7766.         nglTexCoord2sv(memAddress(v), __functionAddress);
  7767.     }
  7768.  
  7769.     /** Alternative version of: {@link #glTexCoord2s(ByteBuffer)} */
  7770.     public static void glTexCoord2(ShortBuffer v) {
  7771.         long __functionAddress = getInstance().glTexCoord2sv;
  7772.         if ( LWJGLUtil.CHECKS ) {
  7773.             checkFunctionAddress(__functionAddress);
  7774.             checkBuffer(v, 2);
  7775.         }
  7776.         nglTexCoord2sv(memAddress(v), __functionAddress);
  7777.     }
  7778.  
  7779.     // --- [ glTexCoord2iv ] ---
  7780.  
  7781.     /** JNI method for {@link #glTexCoord2i(ByteBuffer)} */
  7782.     public static native void nglTexCoord2iv(long v, long __functionAddress);
  7783.  
  7784.     /**
  7785.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7786.      * <p/>
  7787.      * Pointer version of {@link #glTexCoord2i(int, int)}.
  7788.      *
  7789.      * @param v the texture coordinate buffer
  7790.      */
  7791.     public static void glTexCoord2i(ByteBuffer v) {
  7792.         long __functionAddress = getInstance().glTexCoord2iv;
  7793.         if ( LWJGLUtil.CHECKS ) {
  7794.             checkFunctionAddress(__functionAddress);
  7795.             checkBuffer(v, 2 << 2);
  7796.         }
  7797.         nglTexCoord2iv(memAddress(v), __functionAddress);
  7798.     }
  7799.  
  7800.     /** Alternative version of: {@link #glTexCoord2i(ByteBuffer)} */
  7801.     public static void glTexCoord2(IntBuffer v) {
  7802.         long __functionAddress = getInstance().glTexCoord2iv;
  7803.         if ( LWJGLUtil.CHECKS ) {
  7804.             checkFunctionAddress(__functionAddress);
  7805.             checkBuffer(v, 2);
  7806.         }
  7807.         nglTexCoord2iv(memAddress(v), __functionAddress);
  7808.     }
  7809.  
  7810.     // --- [ glTexCoord2dv ] ---
  7811.  
  7812.     /** JNI method for {@link #glTexCoord2d(ByteBuffer)} */
  7813.     public static native void nglTexCoord2dv(long v, long __functionAddress);
  7814.  
  7815.     /**
  7816.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7817.      * <p/>
  7818.      * Pointer version of {@link #glTexCoord2d(double, double)}.
  7819.      *
  7820.      * @param v the texture coordinate buffer
  7821.      */
  7822.     public static void glTexCoord2d(ByteBuffer v) {
  7823.         long __functionAddress = getInstance().glTexCoord2dv;
  7824.         if ( LWJGLUtil.CHECKS ) {
  7825.             checkFunctionAddress(__functionAddress);
  7826.             checkBuffer(v, 2 << 3);
  7827.         }
  7828.         nglTexCoord2dv(memAddress(v), __functionAddress);
  7829.     }
  7830.  
  7831.     /** Alternative version of: {@link #glTexCoord2d(ByteBuffer)} */
  7832.     public static void glTexCoord2(DoubleBuffer v) {
  7833.         long __functionAddress = getInstance().glTexCoord2dv;
  7834.         if ( LWJGLUtil.CHECKS ) {
  7835.             checkFunctionAddress(__functionAddress);
  7836.             checkBuffer(v, 2);
  7837.         }
  7838.         nglTexCoord2dv(memAddress(v), __functionAddress);
  7839.     }
  7840.  
  7841.     // --- [ glTexCoord3f ] ---
  7842.  
  7843.     /** JNI method for {@link #glTexCoord3f(float, float, float)} */
  7844.     public static native void nglTexCoord3f(float s, float t, float r, long __functionAddress);
  7845.  
  7846.     /**
  7847.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7848.      * <p/>
  7849.      * Sets the current three-dimensional texture coordinate. {@code q} is implicitly set to 1.
  7850.      *
  7851.      * @param s the s component of the current texture coordinates
  7852.      * @param t the t component of the current texture coordinates
  7853.      * @param r the r component of the current texture coordinates
  7854.      */
  7855.     public static void glTexCoord3f(float s, float t, float r) {
  7856.         long __functionAddress = getInstance().glTexCoord3f;
  7857.         if ( LWJGLUtil.CHECKS )
  7858.             checkFunctionAddress(__functionAddress);
  7859.         nglTexCoord3f(s, t, r, __functionAddress);
  7860.     }
  7861.  
  7862.     // --- [ glTexCoord3s ] ---
  7863.  
  7864.     /** JNI method for {@link #glTexCoord3s(short, short, short)} */
  7865.     public static native void nglTexCoord3s(short s, short t, short r, long __functionAddress);
  7866.  
  7867.     /**
  7868.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7869.      * <p/>
  7870.      * Short version of {@link #glTexCoord3f(float, float, float)}.
  7871.      *
  7872.      * @param s the s component of the current texture coordinates
  7873.      * @param t the t component of the current texture coordinates
  7874.      * @param r the r component of the current texture coordinates
  7875.      */
  7876.     public static void glTexCoord3s(short s, short t, short r) {
  7877.         long __functionAddress = getInstance().glTexCoord3s;
  7878.         if ( LWJGLUtil.CHECKS )
  7879.             checkFunctionAddress(__functionAddress);
  7880.         nglTexCoord3s(s, t, r, __functionAddress);
  7881.     }
  7882.  
  7883.     // --- [ glTexCoord3i ] ---
  7884.  
  7885.     /** JNI method for {@link #glTexCoord3i(int, int, int)} */
  7886.     public static native void nglTexCoord3i(int s, int t, int r, long __functionAddress);
  7887.  
  7888.     /**
  7889.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7890.      * <p/>
  7891.      * Integer version of {@link #glTexCoord3f(float, float, float)}.
  7892.      *
  7893.      * @param s the s component of the current texture coordinates
  7894.      * @param t the t component of the current texture coordinates
  7895.      * @param r the r component of the current texture coordinates
  7896.      */
  7897.     public static void glTexCoord3i(int s, int t, int r) {
  7898.         long __functionAddress = getInstance().glTexCoord3i;
  7899.         if ( LWJGLUtil.CHECKS )
  7900.             checkFunctionAddress(__functionAddress);
  7901.         nglTexCoord3i(s, t, r, __functionAddress);
  7902.     }
  7903.  
  7904.     // --- [ glTexCoord3d ] ---
  7905.  
  7906.     /** JNI method for {@link #glTexCoord3d(double, double, double)} */
  7907.     public static native void nglTexCoord3d(double s, double t, double r, long __functionAddress);
  7908.  
  7909.     /**
  7910.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7911.      * <p/>
  7912.      * Double version of {@link #glTexCoord3f(float, float, float)}.
  7913.      *
  7914.      * @param s the s component of the current texture coordinates
  7915.      * @param t the t component of the current texture coordinates
  7916.      * @param r the r component of the current texture coordinates
  7917.      */
  7918.     public static void glTexCoord3d(double s, double t, double r) {
  7919.         long __functionAddress = getInstance().glTexCoord3d;
  7920.         if ( LWJGLUtil.CHECKS )
  7921.             checkFunctionAddress(__functionAddress);
  7922.         nglTexCoord3d(s, t, r, __functionAddress);
  7923.     }
  7924.  
  7925.     // --- [ glTexCoord3fv ] ---
  7926.  
  7927.     /** JNI method for {@link #glTexCoord3f(ByteBuffer)} */
  7928.     public static native void nglTexCoord3fv(long v, long __functionAddress);
  7929.  
  7930.     /**
  7931.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7932.      * <p/>
  7933.      * Pointer version of {@link #glTexCoord3f(float, float, float)}.
  7934.      *
  7935.      * @param v the texture coordinate buffer
  7936.      */
  7937.     public static void glTexCoord3f(ByteBuffer v) {
  7938.         long __functionAddress = getInstance().glTexCoord3fv;
  7939.         if ( LWJGLUtil.CHECKS ) {
  7940.             checkFunctionAddress(__functionAddress);
  7941.             checkBuffer(v, 3 << 2);
  7942.         }
  7943.         nglTexCoord3fv(memAddress(v), __functionAddress);
  7944.     }
  7945.  
  7946.     /** Alternative version of: {@link #glTexCoord3f(ByteBuffer)} */
  7947.     public static void glTexCoord3(FloatBuffer v) {
  7948.         long __functionAddress = getInstance().glTexCoord3fv;
  7949.         if ( LWJGLUtil.CHECKS ) {
  7950.             checkFunctionAddress(__functionAddress);
  7951.             checkBuffer(v, 3);
  7952.         }
  7953.         nglTexCoord3fv(memAddress(v), __functionAddress);
  7954.     }
  7955.  
  7956.     // --- [ glTexCoord3sv ] ---
  7957.  
  7958.     /** JNI method for {@link #glTexCoord3s(ByteBuffer)} */
  7959.     public static native void nglTexCoord3sv(long v, long __functionAddress);
  7960.  
  7961.     /**
  7962.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7963.      * <p/>
  7964.      * Pointer version of {@link #glTexCoord3s(short, short, short)}.
  7965.      *
  7966.      * @param v the texture coordinate buffer
  7967.      */
  7968.     public static void glTexCoord3s(ByteBuffer v) {
  7969.         long __functionAddress = getInstance().glTexCoord3sv;
  7970.         if ( LWJGLUtil.CHECKS ) {
  7971.             checkFunctionAddress(__functionAddress);
  7972.             checkBuffer(v, 3 << 1);
  7973.         }
  7974.         nglTexCoord3sv(memAddress(v), __functionAddress);
  7975.     }
  7976.  
  7977.     /** Alternative version of: {@link #glTexCoord3s(ByteBuffer)} */
  7978.     public static void glTexCoord3(ShortBuffer v) {
  7979.         long __functionAddress = getInstance().glTexCoord3sv;
  7980.         if ( LWJGLUtil.CHECKS ) {
  7981.             checkFunctionAddress(__functionAddress);
  7982.             checkBuffer(v, 3);
  7983.         }
  7984.         nglTexCoord3sv(memAddress(v), __functionAddress);
  7985.     }
  7986.  
  7987.     // --- [ glTexCoord3iv ] ---
  7988.  
  7989.     /** JNI method for {@link #glTexCoord3i(ByteBuffer)} */
  7990.     public static native void nglTexCoord3iv(long v, long __functionAddress);
  7991.  
  7992.     /**
  7993.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  7994.      * <p/>
  7995.      * Pointer version of {@link #glTexCoord3i(int, int, int)}.
  7996.      *
  7997.      * @param v the texture coordinate buffer
  7998.      */
  7999.     public static void glTexCoord3i(ByteBuffer v) {
  8000.         long __functionAddress = getInstance().glTexCoord3iv;
  8001.         if ( LWJGLUtil.CHECKS ) {
  8002.             checkFunctionAddress(__functionAddress);
  8003.             checkBuffer(v, 3 << 2);
  8004.         }
  8005.         nglTexCoord3iv(memAddress(v), __functionAddress);
  8006.     }
  8007.  
  8008.     /** Alternative version of: {@link #glTexCoord3i(ByteBuffer)} */
  8009.     public static void glTexCoord3(IntBuffer v) {
  8010.         long __functionAddress = getInstance().glTexCoord3iv;
  8011.         if ( LWJGLUtil.CHECKS ) {
  8012.             checkFunctionAddress(__functionAddress);
  8013.             checkBuffer(v, 3);
  8014.         }
  8015.         nglTexCoord3iv(memAddress(v), __functionAddress);
  8016.     }
  8017.  
  8018.     // --- [ glTexCoord3dv ] ---
  8019.  
  8020.     /** JNI method for {@link #glTexCoord3d(ByteBuffer)} */
  8021.     public static native void nglTexCoord3dv(long v, long __functionAddress);
  8022.  
  8023.     /**
  8024.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8025.      * <p/>
  8026.      * Pointer version of {@link #glTexCoord3d(double, double, double)}.
  8027.      *
  8028.      * @param v the texture coordinate buffer
  8029.      */
  8030.     public static void glTexCoord3d(ByteBuffer v) {
  8031.         long __functionAddress = getInstance().glTexCoord3dv;
  8032.         if ( LWJGLUtil.CHECKS ) {
  8033.             checkFunctionAddress(__functionAddress);
  8034.             checkBuffer(v, 3 << 3);
  8035.         }
  8036.         nglTexCoord3dv(memAddress(v), __functionAddress);
  8037.     }
  8038.  
  8039.     /** Alternative version of: {@link #glTexCoord3d(ByteBuffer)} */
  8040.     public static void glTexCoord3(DoubleBuffer v) {
  8041.         long __functionAddress = getInstance().glTexCoord3dv;
  8042.         if ( LWJGLUtil.CHECKS ) {
  8043.             checkFunctionAddress(__functionAddress);
  8044.             checkBuffer(v, 3);
  8045.         }
  8046.         nglTexCoord3dv(memAddress(v), __functionAddress);
  8047.     }
  8048.  
  8049.     // --- [ glTexCoord4f ] ---
  8050.  
  8051.     /** JNI method for {@link #glTexCoord4f(float, float, float, float)} */
  8052.     public static native void nglTexCoord4f(float s, float t, float r, float q, long __functionAddress);
  8053.  
  8054.     /**
  8055.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8056.      * <p/>
  8057.      * Sets the current four-dimensional texture coordinate.
  8058.      *
  8059.      * @param s the s component of the current texture coordinates
  8060.      * @param t the t component of the current texture coordinates
  8061.      * @param r the r component of the current texture coordinates
  8062.      * @param q the q component of the current texture coordinates
  8063.      */
  8064.     public static void glTexCoord4f(float s, float t, float r, float q) {
  8065.         long __functionAddress = getInstance().glTexCoord4f;
  8066.         if ( LWJGLUtil.CHECKS )
  8067.             checkFunctionAddress(__functionAddress);
  8068.         nglTexCoord4f(s, t, r, q, __functionAddress);
  8069.     }
  8070.  
  8071.     // --- [ glTexCoord4s ] ---
  8072.  
  8073.     /** JNI method for {@link #glTexCoord4s(short, short, short, short)} */
  8074.     public static native void nglTexCoord4s(short s, short t, short r, short q, long __functionAddress);
  8075.  
  8076.     /**
  8077.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8078.      * <p/>
  8079.      * Short version of {@link #glTexCoord4f(float, float, float, float)}.
  8080.      *
  8081.      * @param s the s component of the current texture coordinates
  8082.      * @param t the t component of the current texture coordinates
  8083.      * @param r the r component of the current texture coordinates
  8084.      * @param q the q component of the current texture coordinates
  8085.      */
  8086.     public static void glTexCoord4s(short s, short t, short r, short q) {
  8087.         long __functionAddress = getInstance().glTexCoord4s;
  8088.         if ( LWJGLUtil.CHECKS )
  8089.             checkFunctionAddress(__functionAddress);
  8090.         nglTexCoord4s(s, t, r, q, __functionAddress);
  8091.     }
  8092.  
  8093.     // --- [ glTexCoord4i ] ---
  8094.  
  8095.     /** JNI method for {@link #glTexCoord4i(int, int, int, int)} */
  8096.     public static native void nglTexCoord4i(int s, int t, int r, int q, long __functionAddress);
  8097.  
  8098.     /**
  8099.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8100.      * <p/>
  8101.      * Integer version of {@link #glTexCoord4f(float, float, float, float)}.
  8102.      *
  8103.      * @param s the s component of the current texture coordinates
  8104.      * @param t the t component of the current texture coordinates
  8105.      * @param r the r component of the current texture coordinates
  8106.      * @param q the q component of the current texture coordinates
  8107.      */
  8108.     public static void glTexCoord4i(int s, int t, int r, int q) {
  8109.         long __functionAddress = getInstance().glTexCoord4i;
  8110.         if ( LWJGLUtil.CHECKS )
  8111.             checkFunctionAddress(__functionAddress);
  8112.         nglTexCoord4i(s, t, r, q, __functionAddress);
  8113.     }
  8114.  
  8115.     // --- [ glTexCoord4d ] ---
  8116.  
  8117.     /** JNI method for {@link #glTexCoord4d(double, double, double, double)} */
  8118.     public static native void nglTexCoord4d(double s, double t, double r, double q, long __functionAddress);
  8119.  
  8120.     /**
  8121.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8122.      * <p/>
  8123.      * Double version of {@link #glTexCoord4f(float, float, float, float)}.
  8124.      *
  8125.      * @param s the s component of the current texture coordinates
  8126.      * @param t the t component of the current texture coordinates
  8127.      * @param r the r component of the current texture coordinates
  8128.      * @param q the q component of the current texture coordinates
  8129.      */
  8130.     public static void glTexCoord4d(double s, double t, double r, double q) {
  8131.         long __functionAddress = getInstance().glTexCoord4d;
  8132.         if ( LWJGLUtil.CHECKS )
  8133.             checkFunctionAddress(__functionAddress);
  8134.         nglTexCoord4d(s, t, r, q, __functionAddress);
  8135.     }
  8136.  
  8137.     // --- [ glTexCoord4fv ] ---
  8138.  
  8139.     /** JNI method for {@link #glTexCoord4f(ByteBuffer)} */
  8140.     public static native void nglTexCoord4fv(long v, long __functionAddress);
  8141.  
  8142.     /**
  8143.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8144.      * <p/>
  8145.      * Pointer version of {@link #glTexCoord4f(float, float, float, float)}.
  8146.      *
  8147.      * @param v the texture coordinate buffer
  8148.      */
  8149.     public static void glTexCoord4f(ByteBuffer v) {
  8150.         long __functionAddress = getInstance().glTexCoord4fv;
  8151.         if ( LWJGLUtil.CHECKS ) {
  8152.             checkFunctionAddress(__functionAddress);
  8153.             checkBuffer(v, 4 << 2);
  8154.         }
  8155.         nglTexCoord4fv(memAddress(v), __functionAddress);
  8156.     }
  8157.  
  8158.     /** Alternative version of: {@link #glTexCoord4f(ByteBuffer)} */
  8159.     public static void glTexCoord4(FloatBuffer v) {
  8160.         long __functionAddress = getInstance().glTexCoord4fv;
  8161.         if ( LWJGLUtil.CHECKS ) {
  8162.             checkFunctionAddress(__functionAddress);
  8163.             checkBuffer(v, 4);
  8164.         }
  8165.         nglTexCoord4fv(memAddress(v), __functionAddress);
  8166.     }
  8167.  
  8168.     // --- [ glTexCoord4sv ] ---
  8169.  
  8170.     /** JNI method for {@link #glTexCoord4s(ByteBuffer)} */
  8171.     public static native void nglTexCoord4sv(long v, long __functionAddress);
  8172.  
  8173.     /**
  8174.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8175.      * <p/>
  8176.      * Pointer version of {@link #glTexCoord4s(short, short, short, short)}.
  8177.      *
  8178.      * @param v the texture coordinate buffer
  8179.      */
  8180.     public static void glTexCoord4s(ByteBuffer v) {
  8181.         long __functionAddress = getInstance().glTexCoord4sv;
  8182.         if ( LWJGLUtil.CHECKS ) {
  8183.             checkFunctionAddress(__functionAddress);
  8184.             checkBuffer(v, 4 << 1);
  8185.         }
  8186.         nglTexCoord4sv(memAddress(v), __functionAddress);
  8187.     }
  8188.  
  8189.     /** Alternative version of: {@link #glTexCoord4s(ByteBuffer)} */
  8190.     public static void glTexCoord4(ShortBuffer v) {
  8191.         long __functionAddress = getInstance().glTexCoord4sv;
  8192.         if ( LWJGLUtil.CHECKS ) {
  8193.             checkFunctionAddress(__functionAddress);
  8194.             checkBuffer(v, 4);
  8195.         }
  8196.         nglTexCoord4sv(memAddress(v), __functionAddress);
  8197.     }
  8198.  
  8199.     // --- [ glTexCoord4iv ] ---
  8200.  
  8201.     /** JNI method for {@link #glTexCoord4i(ByteBuffer)} */
  8202.     public static native void nglTexCoord4iv(long v, long __functionAddress);
  8203.  
  8204.     /**
  8205.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8206.      * <p/>
  8207.      * Pointer version of {@link #glTexCoord4i(int, int, int, int)}.
  8208.      *
  8209.      * @param v the texture coordinate buffer
  8210.      */
  8211.     public static void glTexCoord4i(ByteBuffer v) {
  8212.         long __functionAddress = getInstance().glTexCoord4iv;
  8213.         if ( LWJGLUtil.CHECKS ) {
  8214.             checkFunctionAddress(__functionAddress);
  8215.             checkBuffer(v, 4 << 2);
  8216.         }
  8217.         nglTexCoord4iv(memAddress(v), __functionAddress);
  8218.     }
  8219.  
  8220.     /** Alternative version of: {@link #glTexCoord4i(ByteBuffer)} */
  8221.     public static void glTexCoord4(IntBuffer v) {
  8222.         long __functionAddress = getInstance().glTexCoord4iv;
  8223.         if ( LWJGLUtil.CHECKS ) {
  8224.             checkFunctionAddress(__functionAddress);
  8225.             checkBuffer(v, 4);
  8226.         }
  8227.         nglTexCoord4iv(memAddress(v), __functionAddress);
  8228.     }
  8229.  
  8230.     // --- [ glTexCoord4dv ] ---
  8231.  
  8232.     /** JNI method for {@link #glTexCoord4d(ByteBuffer)} */
  8233.     public static native void nglTexCoord4dv(long v, long __functionAddress);
  8234.  
  8235.     /**
  8236.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8237.      * <p/>
  8238.      * Pointer version of {@link #glTexCoord4d(double, double, double, double)}.
  8239.      *
  8240.      * @param v the texture coordinate buffer
  8241.      */
  8242.     public static void glTexCoord4d(ByteBuffer v) {
  8243.         long __functionAddress = getInstance().glTexCoord4dv;
  8244.         if ( LWJGLUtil.CHECKS ) {
  8245.             checkFunctionAddress(__functionAddress);
  8246.             checkBuffer(v, 4 << 3);
  8247.         }
  8248.         nglTexCoord4dv(memAddress(v), __functionAddress);
  8249.     }
  8250.  
  8251.     /** Alternative version of: {@link #glTexCoord4d(ByteBuffer)} */
  8252.     public static void glTexCoord4(DoubleBuffer v) {
  8253.         long __functionAddress = getInstance().glTexCoord4dv;
  8254.         if ( LWJGLUtil.CHECKS ) {
  8255.             checkFunctionAddress(__functionAddress);
  8256.             checkBuffer(v, 4);
  8257.         }
  8258.         nglTexCoord4dv(memAddress(v), __functionAddress);
  8259.     }
  8260.  
  8261.     // --- [ glTexCoordPointer ] ---
  8262.  
  8263.     /** JNI method for {@link #glTexCoordPointer(int, int, int, ByteBuffer)} */
  8264.     public static native void nglTexCoordPointer(int size, int type, int stride, long pointer, long __functionAddress);
  8265.  
  8266.     /**
  8267.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8268.      * <p/>
  8269.      * Specifies the location and organization of a texture coordinate array.
  8270.      *
  8271.      * @param size    the number of values per vertex that are stored in the array. One of:<p/>1, 2, 3, 4
  8272.      * @param type    the data type of the values stored in the array. One of:<p/>{@link #GL_SHORT}, {@link #GL_INT}, {@link GL30#GL_HALF}, {@link #GL_FLOAT}, {@link #GL_DOUBLE}, {@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV}, {@link GL12#GL_INT_2_10_10_10_REV}
  8273.      * @param stride  the vertex stride in bytes. If specified as zero, then array elements are stored sequentially
  8274.      * @param pointer the texture coordinate array data
  8275.      */
  8276.     public static void glTexCoordPointer(int size, int type, int stride, ByteBuffer pointer) {
  8277.         long __functionAddress = getInstance().glTexCoordPointer;
  8278.         if ( LWJGLUtil.CHECKS ) {
  8279.             checkFunctionAddress(__functionAddress);
  8280.             GLChecks.ensureBufferObject(0x8894, false);
  8281.         }
  8282.         nglTexCoordPointer(size, type, stride, memAddress(pointer), __functionAddress);
  8283.     }
  8284.  
  8285.     /** Buffer object offset version of: {@link #glTexCoordPointer(int, int, int, ByteBuffer)} */
  8286.     public static void glTexCoordPointer(int size, int type, int stride, long pointerOffset) {
  8287.         long __functionAddress = getInstance().glTexCoordPointer;
  8288.         if ( LWJGLUtil.CHECKS ) {
  8289.             checkFunctionAddress(__functionAddress);
  8290.             GLChecks.ensureBufferObject(0x8894, true);
  8291.         }
  8292.         nglTexCoordPointer(size, type, stride, pointerOffset, __functionAddress);
  8293.     }
  8294.  
  8295.     /** GL_FLOAT version of: {@link #glTexCoordPointer(int, int, int, ByteBuffer)} */
  8296.     public static void glTexCoordPointer(int size, int stride, FloatBuffer pointer) {
  8297.         long __functionAddress = getInstance().glTexCoordPointer;
  8298.         if ( LWJGLUtil.CHECKS ) {
  8299.             checkFunctionAddress(__functionAddress);
  8300.             GLChecks.ensureBufferObject(0x8894, false);
  8301.         }
  8302.         nglTexCoordPointer(size, GL11.GL_FLOAT, stride, memAddress(pointer), __functionAddress);
  8303.     }
  8304.  
  8305.     // --- [ glTexEnvi ] ---
  8306.  
  8307.     /** JNI method for {@link #glTexEnvi(int, int, int)} */
  8308.     public static native void nglTexEnvi(int target, int pname, int param, long __functionAddress);
  8309.  
  8310.     /**
  8311.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glTexEnvi.xml">OpenGL SDK Reference</a>
  8312.      * <p/>
  8313.      * Sets parameters of the texture environment that specifies how texture values are interpreted when texturing a fragment, or sets per-texture-unit
  8314.      * filtering parameters.
  8315.      *
  8316.      * @param target the texture environment target. One of:<p/>{@link #GL_TEXTURE_ENV}, {@link #GL_TEXTURE_FILTER_CONTROL}, {@link #GL_POINT_SPRITE}
  8317.      * @param pname  the parameter to set. One of:<p/>{@link #GL_COORD_REPLACE}, {@link #GL_TEXTURE_ENV_MODE}, {@link #GL_TEXTURE_LOD_BIAS}, {@link #GL_COMBINE_RGB}, {@link #GL_COMBINE_ALPHA}, {@link #GL_SRC0_RGB}, {@link #GL_SRC1_RGB}, {@link #GL_SRC2_RGB}, {@link #GL_SRC0_ALPHA}, {@link #GL_SRC1_ALPHA}, {@link #GL_SRC2_ALPHA}, {@link #GL_OPERAND0_RGB}, {@link #GL_OPERAND1_RGB}, {@link #GL_OPERAND2_RGB}, {@link #GL_OPERAND0_ALPHA}, {@link #GL_OPERAND1_ALPHA}, {@link #GL_OPERAND2_ALPHA}, {@link #GL_RGB_SCALE}, {@link #GL_ALPHA_SCALE}
  8318.      * @param param  the parameter value. Scalar value or one of:. One of:<p/>{@link #GL_REPLACE}, {@link #GL_MODULATE}, {@link #GL_DECAL}, {@link #GL_BLEND}, {@link #GL_ADD}, {@link #GL_COMBINE}, {@link #GL_ADD_SIGNED}, {@link #GL_INTERPOLATE}, {@link #GL_SUBTRACT}, {@link #GL_DOT3_RGB}, {@link #GL_DOT3_RGBA}, {@link #GL_TEXTURE}, {@link GL13#GL_TEXTURE0}, GL13.GL_TEXTURE[1-31], {@link #GL_CONSTANT}, {@link #GL_PRIMARY_COLOR}, {@link #GL_PREVIOUS}
  8319.      */
  8320.     public static void glTexEnvi(int target, int pname, int param) {
  8321.         long __functionAddress = getInstance().glTexEnvi;
  8322.         if ( LWJGLUtil.CHECKS )
  8323.             checkFunctionAddress(__functionAddress);
  8324.         nglTexEnvi(target, pname, param, __functionAddress);
  8325.     }
  8326.  
  8327.     // --- [ glTexEnviv ] ---
  8328.  
  8329.     /** JNI method for {@link #glTexEnvi(int, int, ByteBuffer)} */
  8330.     public static native void nglTexEnviv(int target, int pname, long params, long __functionAddress);
  8331.  
  8332.     /**
  8333.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glTexEnv.xml">OpenGL SDK Reference</a>
  8334.      * <p/>
  8335.      * Pointer version of {@link #glTexEnvi(int, int, int)}.
  8336.      *
  8337.      * @param target the texture environment target. Must be:<p/>{@link #GL_TEXTURE_ENV}
  8338.      * @param pname  the parameter to set. Must be:<p/>{@link #GL_TEXTURE_ENV_COLOR}
  8339.      * @param params the parameter value
  8340.      */
  8341.     public static void glTexEnvi(int target, int pname, ByteBuffer params) {
  8342.         long __functionAddress = getInstance().glTexEnviv;
  8343.         if ( LWJGLUtil.CHECKS ) {
  8344.             checkFunctionAddress(__functionAddress);
  8345.             checkBuffer(params, 4 << 2);
  8346.         }
  8347.         nglTexEnviv(target, pname, memAddress(params), __functionAddress);
  8348.     }
  8349.  
  8350.     /** Alternative version of: {@link #glTexEnvi(int, int, ByteBuffer)} */
  8351.     public static void glTexEnv(int target, int pname, IntBuffer params) {
  8352.         long __functionAddress = getInstance().glTexEnviv;
  8353.         if ( LWJGLUtil.CHECKS ) {
  8354.             checkFunctionAddress(__functionAddress);
  8355.             checkBuffer(params, 4);
  8356.         }
  8357.         nglTexEnviv(target, pname, memAddress(params), __functionAddress);
  8358.     }
  8359.  
  8360.     // --- [ glTexEnvf ] ---
  8361.  
  8362.     /** JNI method for {@link #glTexEnvf(int, int, float)} */
  8363.     public static native void nglTexEnvf(int target, int pname, float param, long __functionAddress);
  8364.  
  8365.     /**
  8366.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glTexEnvf.xml">OpenGL SDK Reference</a>
  8367.      * <p/>
  8368.      * Float version of {@link #glTexEnvi(int, int, int)}.
  8369.      *
  8370.      * @param target the texture environment target
  8371.      * @param pname  the parameter to set
  8372.      * @param param  the parameter value
  8373.      */
  8374.     public static void glTexEnvf(int target, int pname, float param) {
  8375.         long __functionAddress = getInstance().glTexEnvf;
  8376.         if ( LWJGLUtil.CHECKS )
  8377.             checkFunctionAddress(__functionAddress);
  8378.         nglTexEnvf(target, pname, param, __functionAddress);
  8379.     }
  8380.  
  8381.     // --- [ glTexEnvfv ] ---
  8382.  
  8383.     /** JNI method for {@link #glTexEnvf(int, int, ByteBuffer)} */
  8384.     public static native void nglTexEnvfv(int target, int pname, long params, long __functionAddress);
  8385.  
  8386.     /**
  8387.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glTexEnv.xml">OpenGL SDK Reference</a>
  8388.      * <p/>
  8389.      * Pointer version of {@link #glTexEnvf(int, int, float)}.
  8390.      *
  8391.      * @param target the texture environment target. Must be:<p/>{@link #GL_TEXTURE_ENV}
  8392.      * @param pname  the parameter to set. Must be:<p/>{@link #GL_TEXTURE_ENV_COLOR}
  8393.      * @param params the parameter value
  8394.      */
  8395.     public static void glTexEnvf(int target, int pname, ByteBuffer params) {
  8396.         long __functionAddress = getInstance().glTexEnvfv;
  8397.         if ( LWJGLUtil.CHECKS ) {
  8398.             checkFunctionAddress(__functionAddress);
  8399.             checkBuffer(params, 4 << 2);
  8400.         }
  8401.         nglTexEnvfv(target, pname, memAddress(params), __functionAddress);
  8402.     }
  8403.  
  8404.     /** Alternative version of: {@link #glTexEnvf(int, int, ByteBuffer)} */
  8405.     public static void glTexEnv(int target, int pname, FloatBuffer params) {
  8406.         long __functionAddress = getInstance().glTexEnvfv;
  8407.         if ( LWJGLUtil.CHECKS ) {
  8408.             checkFunctionAddress(__functionAddress);
  8409.             checkBuffer(params, 4);
  8410.         }
  8411.         nglTexEnvfv(target, pname, memAddress(params), __functionAddress);
  8412.     }
  8413.  
  8414.     // --- [ glTexGeni ] ---
  8415.  
  8416.     /** JNI method for {@link #glTexGeni(int, int, int)} */
  8417.     public static native void nglTexGeni(int coord, int pname, int param, long __functionAddress);
  8418.  
  8419.     /**
  8420.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8421.      * <p/>
  8422.      * Sets an integer texture coordinate generation parameter.
  8423.      * <p/>
  8424.      * A texture coordinate generation function is enabled or disabled using {@link #glEnable(int)} and {@link #glDisable(int)} with an argument of
  8425.      * {@link #GL_TEXTURE_GEN_S}, {@link #GL_TEXTURE_GEN_T}, {@link #GL_TEXTURE_GEN_R}, or {@link #GL_TEXTURE_GEN_Q} (each indicates the corresponding texture
  8426.      * coordinate). When enabled, the specified texture coordinate is computed according to the current {@link #GL_EYE_LINEAR}, {@link #GL_OBJECT_LINEAR} or
  8427.      * {@link #GL_SPHERE_MAP} specification, depending on the current setting of {@link #GL_TEXTURE_GEN_MODE} for that coordinate. When disabled, subsequent
  8428.      * vertices will take the indicated texture coordinate from the current texture coordinates.
  8429.      * <p/>
  8430.      * The initial state has the texture generation function disabled for all texture coordinates. Initially all texture generation modes are EYE_LINEAR.
  8431.      *
  8432.      * @param coord the coordinate for which to set the parameter. One of:<p/>{@link #GL_S}, {@link #GL_T}, {@link #GL_R}, {@link #GL_Q}
  8433.      * @param pname the parameter to set. Must be:<p/>{@link #GL_TEXTURE_GEN_MODE}
  8434.      * @param param the parameter value. One of:<p/>{@link #GL_OBJECT_LINEAR}, {@link #GL_EYE_LINEAR}, {@link #GL_SPHERE_MAP}, {@link #GL_REFLECTION_MAP}, {@link #GL_NORMAL_MAP}
  8435.      */
  8436.     public static void glTexGeni(int coord, int pname, int param) {
  8437.         long __functionAddress = getInstance().glTexGeni;
  8438.         if ( LWJGLUtil.CHECKS )
  8439.             checkFunctionAddress(__functionAddress);
  8440.         nglTexGeni(coord, pname, param, __functionAddress);
  8441.     }
  8442.  
  8443.     // --- [ glTexGeniv ] ---
  8444.  
  8445.     /** JNI method for {@link #glTexGeni(int, int, ByteBuffer)} */
  8446.     public static native void nglTexGeniv(int coord, int pname, long params, long __functionAddress);
  8447.  
  8448.     /**
  8449.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8450.      * <p/>
  8451.      * Pointer version of {@link #glTexGeni(int, int, int)}.
  8452.      *
  8453.      * @param coord  the coordinate for which to set the parameter
  8454.      * @param pname  the parameter to set. One of:<p/>{@link #GL_OBJECT_PLANE}, {@link #GL_EYE_PLANE}
  8455.      * @param params the parameter value
  8456.      */
  8457.     public static void glTexGeni(int coord, int pname, ByteBuffer params) {
  8458.         long __functionAddress = getInstance().glTexGeniv;
  8459.         if ( LWJGLUtil.CHECKS ) {
  8460.             checkFunctionAddress(__functionAddress);
  8461.             checkBuffer(params, 4 << 2);
  8462.         }
  8463.         nglTexGeniv(coord, pname, memAddress(params), __functionAddress);
  8464.     }
  8465.  
  8466.     /** Alternative version of: {@link #glTexGeni(int, int, ByteBuffer)} */
  8467.     public static void glTexGen(int coord, int pname, IntBuffer params) {
  8468.         long __functionAddress = getInstance().glTexGeniv;
  8469.         if ( LWJGLUtil.CHECKS ) {
  8470.             checkFunctionAddress(__functionAddress);
  8471.             checkBuffer(params, 4);
  8472.         }
  8473.         nglTexGeniv(coord, pname, memAddress(params), __functionAddress);
  8474.     }
  8475.  
  8476.     // --- [ glTexGenf ] ---
  8477.  
  8478.     /** JNI method for {@link #glTexGenf(int, int, float)} */
  8479.     public static native void nglTexGenf(int coord, int pname, float param, long __functionAddress);
  8480.  
  8481.     /**
  8482.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8483.      * <p/>
  8484.      * Float version of {@link #glTexGeni(int, int, int)}.
  8485.      *
  8486.      * @param coord the coordinate for which to set the parameter
  8487.      * @param pname the parameter to set
  8488.      * @param param the parameter value
  8489.      */
  8490.     public static void glTexGenf(int coord, int pname, float param) {
  8491.         long __functionAddress = getInstance().glTexGenf;
  8492.         if ( LWJGLUtil.CHECKS )
  8493.             checkFunctionAddress(__functionAddress);
  8494.         nglTexGenf(coord, pname, param, __functionAddress);
  8495.     }
  8496.  
  8497.     // --- [ glTexGenfv ] ---
  8498.  
  8499.     /** JNI method for {@link #glTexGenf(int, int, ByteBuffer)} */
  8500.     public static native void nglTexGenfv(int coord, int pname, long params, long __functionAddress);
  8501.  
  8502.     /**
  8503.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8504.      * <p/>
  8505.      * Pointer version of {@link #glTexGenf(int, int, float)}.
  8506.      *
  8507.      * @param coord  the coordinate for which to set the parameter
  8508.      * @param pname  the parameter to set. One of:<p/>{@link #GL_OBJECT_PLANE}, {@link #GL_EYE_PLANE}
  8509.      * @param params the parameter value
  8510.      */
  8511.     public static void glTexGenf(int coord, int pname, ByteBuffer params) {
  8512.         long __functionAddress = getInstance().glTexGenfv;
  8513.         if ( LWJGLUtil.CHECKS ) {
  8514.             checkFunctionAddress(__functionAddress);
  8515.             checkBuffer(params, 4 << 2);
  8516.         }
  8517.         nglTexGenfv(coord, pname, memAddress(params), __functionAddress);
  8518.     }
  8519.  
  8520.     /** Alternative version of: {@link #glTexGenf(int, int, ByteBuffer)} */
  8521.     public static void glTexGen(int coord, int pname, FloatBuffer params) {
  8522.         long __functionAddress = getInstance().glTexGenfv;
  8523.         if ( LWJGLUtil.CHECKS ) {
  8524.             checkFunctionAddress(__functionAddress);
  8525.             checkBuffer(params, 4);
  8526.         }
  8527.         nglTexGenfv(coord, pname, memAddress(params), __functionAddress);
  8528.     }
  8529.  
  8530.     // --- [ glTexGend ] ---
  8531.  
  8532.     /** JNI method for {@link #glTexGend(int, int, double)} */
  8533.     public static native void nglTexGend(int coord, int pname, double param, long __functionAddress);
  8534.  
  8535.     /**
  8536.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8537.      * <p/>
  8538.      * Double version of {@link #glTexGeni(int, int, int)}.
  8539.      *
  8540.      * @param coord the coordinate for which to set the parameter
  8541.      * @param pname the parameter to set
  8542.      * @param param the parameter value
  8543.      */
  8544.     public static void glTexGend(int coord, int pname, double param) {
  8545.         long __functionAddress = getInstance().glTexGend;
  8546.         if ( LWJGLUtil.CHECKS )
  8547.             checkFunctionAddress(__functionAddress);
  8548.         nglTexGend(coord, pname, param, __functionAddress);
  8549.     }
  8550.  
  8551.     // --- [ glTexGendv ] ---
  8552.  
  8553.     /** JNI method for {@link #glTexGend(int, int, ByteBuffer)} */
  8554.     public static native void nglTexGendv(int coord, int pname, long params, long __functionAddress);
  8555.  
  8556.     /**
  8557.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  8558.      * <p/>
  8559.      * Pointer version of {@link #glTexGend(int, int, double)}.
  8560.      *
  8561.      * @param coord  the coordinate for which to set the parameter
  8562.      * @param pname  the parameter to set
  8563.      * @param params the parameter value
  8564.      */
  8565.     public static void glTexGend(int coord, int pname, ByteBuffer params) {
  8566.         long __functionAddress = getInstance().glTexGendv;
  8567.         if ( LWJGLUtil.CHECKS ) {
  8568.             checkFunctionAddress(__functionAddress);
  8569.             checkBuffer(params, 4 << 3);
  8570.         }
  8571.         nglTexGendv(coord, pname, memAddress(params), __functionAddress);
  8572.     }
  8573.  
  8574.     /** Alternative version of: {@link #glTexGend(int, int, ByteBuffer)} */
  8575.     public static void glTexGen(int coord, int pname, DoubleBuffer params) {
  8576.         long __functionAddress = getInstance().glTexGendv;
  8577.         if ( LWJGLUtil.CHECKS ) {
  8578.             checkFunctionAddress(__functionAddress);
  8579.             checkBuffer(params, 4);
  8580.         }
  8581.         nglTexGendv(coord, pname, memAddress(params), __functionAddress);
  8582.     }
  8583.  
  8584.     // --- [ glTexImage2D ] ---
  8585.  
  8586.     /** JNI method for {@link #glTexImage2D(int, int, int, int, int, int, int, int, ByteBuffer)} */
  8587.     public static native void nglTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, long pixels, long __functionAddress);
  8588.  
  8589.     /**
  8590.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glTexImage2D.xml">OpenGL SDK Reference</a>
  8591.      * <p/>
  8592.      * Specifies a two-dimensional texture image.
  8593.      *
  8594.      * @param target         the texture target. One of:<p/>{@link GL11#GL_TEXTURE_2D}, {@link GL30#GL_TEXTURE_1D_ARRAY}, {@link GL31#GL_TEXTURE_RECTANGLE}, {@link GL13#GL_TEXTURE_CUBE_MAP}, {@link GL11#GL_PROXY_TEXTURE_2D}, {@link GL30#GL_PROXY_TEXTURE_1D_ARRAY}, {@link GL31#GL_PROXY_TEXTURE_RECTANGLE}, {@link GL13#GL_PROXY_TEXTURE_CUBE_MAP}
  8595.      * @param level          the level-of-detail number
  8596.      * @param internalformat the texture internal format. One of:<p/>{@link GL11#GL_RED}, {@link #GL_RG}, {@link GL11#GL_RGB}, {@link GL11#GL_RGBA}, {@link GL11#GL_DEPTH_COMPONENT}, {@link GL30#GL_DEPTH_STENCIL}, {@link GL30#GL_R8}, {@link GL31#GL_R8_SNORM}, {@link GL30#GL_R16}, {@link GL31#GL_R16_SNORM}, {@link GL30#GL_RG8}, {@link GL31#GL_RG8_SNORM}, {@link GL30#GL_RG16}, {@link GL31#GL_RG16_SNORM}, {@link GL11#GL_R3_G3_B2}, {@link GL11#GL_RGB4}, {@link GL11#GL_RGB5}, {@link GL41#GL_RGB565}, {@link GL11#GL_RGB8}, {@link GL31#GL_RGB8_SNORM}, {@link GL11#GL_RGB10}, {@link GL11#GL_RGB12}, {@link GL11#GL_RGB16}, {@link GL31#GL_RGB16_SNORM}, {@link GL11#GL_RGBA2}, {@link GL11#GL_RGBA4}, {@link GL11#GL_RGB5_A1}, {@link GL11#GL_RGBA8}, {@link GL31#GL_RGBA8_SNORM}, {@link GL11#GL_RGB10_A2}, {@link GL33#GL_RGB10_A2UI}, {@link GL30#GL_RGBA12}, {@link GL30#GL_RGBA16}, {@link GL31#GL_RGBA16_SNORM}, {@link GL30#GL_SRGB8}, {@link GL30#GL_SRGB8_ALPHA8}, {@link GL30#GL_R16F}, {@link GL30#GL_RG16F}, {@link GL30#GL_RGB16F}, {@link GL30#GL_RGBA16F}, {@link GL30#GL_R32F}, {@link GL30#GL_RG32F}, {@link GL30#GL_RGB32F}, {@link GL30#GL_RGBA32F}, {@link GL30#GL_R11F_G11F_B10F}, {@link GL30#GL_RGB9_E5}, {@link GL30#GL_R8I}, {@link GL30#GL_R8UI}, {@link GL30#GL_R16I}, {@link GL30#GL_R16UI}, {@link GL30#GL_R32I}, {@link GL30#GL_R32UI}, {@link GL30#GL_RG8I}, {@link GL30#GL_RG8UI}, {@link GL30#GL_RG16I}, {@link GL30#GL_RG16UI}, {@link GL30#GL_RG32I}, {@link GL30#GL_RG32UI}, {@link GL30#GL_RGB8I}, {@link GL30#GL_RGB8UI}, {@link GL30#GL_RGB16I}, {@link GL30#GL_RGB16UI}, {@link GL30#GL_RGB32I}, {@link GL30#GL_RGB32UI}, {@link GL30#GL_RGBA8I}, {@link GL30#GL_RGBA8UI}, {@link GL30#GL_RGBA16I}, {@link GL30#GL_RGBA16UI}, {@link GL30#GL_RGBA32I}, {@link GL30#GL_RGBA32UI}, {@link GL14#GL_DEPTH_COMPONENT16}, {@link GL14#GL_DEPTH_COMPONENT24}, {@link GL14#GL_DEPTH_COMPONENT32}, {@link GL30#GL_DEPTH24_STENCIL8}, {@link GL30#GL_DEPTH_COMPONENT32F}, {@link GL30#GL_DEPTH32F_STENCIL8}, {@link GL30#GL_COMPRESSED_RED}, {@link GL30#GL_COMPRESSED_RG}, {@link GL13#GL_COMPRESSED_RGB}, {@link GL13#GL_COMPRESSED_RGBA}, {@link GL21#GL_COMPRESSED_SRGB}, {@link GL21#GL_COMPRESSED_SRGB_ALPHA}, {@link GL30#GL_COMPRESSED_RED_RGTC1}, {@link GL30#GL_COMPRESSED_SIGNED_RED_RGTC1}, {@link GL30#GL_COMPRESSED_RG_RGTC2}, {@link GL30#GL_COMPRESSED_SIGNED_RG_RGTC2}, {@link GL42#GL_COMPRESSED_RGBA_BPTC_UNORM}, {@link GL42#GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM}, {@link GL42#GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT}, {@link GL42#GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT}, {@link GL43#COMPRESSED_RGB8_ETC2}, {@link GL43#COMPRESSED_SRGB8_ETC2}, {@link GL43#COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2}, {@link GL43#COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2}, {@link GL43#COMPRESSED_RGBA8_ETC2_EAC}, {@link GL43#COMPRESSED_SRGB8_ALPHA8_ETC2_EAC}, {@link GL43#COMPRESSED_R11_EAC}, {@link GL43#COMPRESSED_SIGNED_R11_EAC}, {@link GL43#COMPRESSED_RG11_EAC}, {@link GL43#COMPRESSED_SIGNED_RG11_EAC}, see {@link EXTTextureCompressionS3TC}, see {@link EXTTextureCompressionLATC}, see {@link ATITextureCompression3DC}
  8597.      * @param width          the texture width
  8598.      * @param height         the texture height
  8599.      * @param border         the texture border width
  8600.      * @param format         the texel data format. One of:<p/>{@link GL11#GL_STENCIL_INDEX}, {@link GL11#GL_DEPTH_COMPONENT}, {@link GL30#GL_DEPTH_STENCIL}, {@link GL11#GL_RED}, {@link GL11#GL_GREEN}, {@link GL11#GL_BLUE}, {@link GL11#GL_ALPHA}, {@link GL11#GL_RG}, {@link GL11#GL_RGB}, {@link GL11#GL_RGBA}, {@link GL11#GL_BGR}, {@link GL11#GL_BGRA}, {@link GL11#GL_LUMINANCE}, {@link GL11#GL_LUMINANCE_ALPHA}, {@link GL30#GL_RED_INTEGER}, {@link GL30#GL_GREEN_INTEGER}, {@link GL30#GL_BLUE_INTEGER}, {@link GL30#GL_ALPHA_INTEGER}, {@link GL30#GL_RG_INTEGER}, {@link GL30#GL_RGB_INTEGER}, {@link GL30#GL_RGBA_INTEGER}, {@link GL30#GL_BGR_INTEGER}, {@link GL30#GL_BGRA_INTEGER}
  8601.      * @param type           the texel data type. One of:<p/>{@link GL11#GL_UNSIGNED_BYTE}, {@link GL11#GL_BYTE}, {@link GL11#GL_UNSIGNED_SHORT}, {@link GL11#GL_SHORT}, {@link GL11#GL_UNSIGNED_INT}, {@link GL11#GL_INT}, {@link GL30#GL_HALF_FLOAT}, {@link GL11#GL_FLOAT}, {@link GL12#GL_UNSIGNED_BYTE_3_3_2}, {@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV}, {@link GL12#GL_UNSIGNED_SHORT_5_6_5}, {@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV}, {@link GL12#GL_UNSIGNED_SHORT_4_4_4_4}, {@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV}, {@link GL12#GL_UNSIGNED_SHORT_5_5_5_1}, {@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV}, {@link GL12#GL_UNSIGNED_INT_8_8_8_8}, {@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV}, {@link GL12#GL_UNSIGNED_INT_10_10_10_2}, {@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV}, {@link GL30#GL_UNSIGNED_INT_24_8}, {@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV}, {@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV}, {@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV}, {@link GL11#GL_BITMAP}
  8602.      * @param pixels         the texel data
  8603.      */
  8604.     public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, ByteBuffer pixels) {
  8605.         long __functionAddress = getInstance().glTexImage2D;
  8606.         if ( LWJGLUtil.CHECKS ) {
  8607.             checkFunctionAddress(__functionAddress);
  8608.             checkBuffer(pixels, width * height * GLChecks.getPixelBytes(format, type));
  8609.             GLChecks.ensureBufferObject(0x88EF, false);
  8610.         }
  8611.         nglTexImage2D(target, level, internalformat, width, height, border, format, type, memAddress(pixels), __functionAddress);
  8612.     }
  8613.  
  8614.     /** Buffer object offset version of: {@link #glTexImage2D(int, int, int, int, int, int, int, int, ByteBuffer)} */
  8615.     public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, long pixelsOffset) {
  8616.         long __functionAddress = getInstance().glTexImage2D;
  8617.         if ( LWJGLUtil.CHECKS ) {
  8618.             checkFunctionAddress(__functionAddress);
  8619.             GLChecks.ensureBufferObject(0x88EF, true);
  8620.         }
  8621.         nglTexImage2D(target, level, internalformat, width, height, border, format, type, pixelsOffset, __functionAddress);
  8622.     }
  8623.  
  8624.     /** ShortBuffer version of: {@link #glTexImage2D(int, int, int, int, int, int, int, int, ByteBuffer)} */
  8625.     public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, ShortBuffer pixels) {
  8626.         long __functionAddress = getInstance().glTexImage2D;
  8627.         if ( LWJGLUtil.CHECKS ) {
  8628.             checkFunctionAddress(__functionAddress);
  8629.             checkBuffer(pixels, (width * height * GLChecks.getPixelBytes(format, type)) >> 1);
  8630.             GLChecks.ensureBufferObject(0x88EF, false);
  8631.         }
  8632.         nglTexImage2D(target, level, internalformat, width, height, border, format, type, memAddress(pixels), __functionAddress);
  8633.     }
  8634.  
  8635.     /** IntBuffer version of: {@link #glTexImage2D(int, int, int, int, int, int, int, int, ByteBuffer)} */
  8636.     public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, IntBuffer pixels) {
  8637.         long __functionAddress = getInstance().glTexImage2D;
  8638.         if ( LWJGLUtil.CHECKS ) {
  8639.             checkFunctionAddress(__functionAddress);
  8640.             checkBuffer(pixels, (width * height * GLChecks.getPixelBytes(format, type)) >> 2);
  8641.             GLChecks.ensureBufferObject(0x88EF, false);
  8642.         }
  8643.         nglTexImage2D(target, level, internalformat, width, height, border, format, type, memAddress(pixels), __functionAddress);
  8644.     }
  8645.  
  8646.     /** FloatBuffer version of: {@link #glTexImage2D(int, int, int, int, int, int, int, int, ByteBuffer)} */
  8647.     public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, FloatBuffer pixels) {
  8648.         long __functionAddress = getInstance().glTexImage2D;
  8649.         if ( LWJGLUtil.CHECKS ) {
  8650.             checkFunctionAddress(__functionAddress);
  8651.             checkBuffer(pixels, (width * height * GLChecks.getPixelBytes(format, type)) >> 2);
  8652.             GLChecks.ensureBufferObject(0x88EF, false);
  8653.         }
  8654.         nglTexImage2D(target, level, internalformat, width, height, border, format, type, memAddress(pixels), __functionAddress);
  8655.     }
  8656.  
  8657.     /** DoubleBuffer version of: {@link #glTexImage2D(int, int, int, int, int, int, int, int, ByteBuffer)} */
  8658.     public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, DoubleBuffer pixels) {
  8659.         long __functionAddress = getInstance().glTexImage2D;
  8660.         if ( LWJGLUtil.CHECKS ) {
  8661.             checkFunctionAddress(__functionAddress);
  8662.             checkBuffer(pixels, (width * height * GLChecks.getPixelBytes(format, type)) >> 3);
  8663.             GLChecks.ensureBufferObject(0x88EF, false);
  8664.         }
  8665.         nglTexImage2D(target, level, internalformat, width, height, border, format, type, memAddress(pixels), __functionAddress);
  8666.     }
  8667.  
  8668.     // --- [ glTexImage1D ] ---
  8669.  
  8670.     /** JNI method for {@link #glTexImage1D(int, int, int, int, int, int, int, ByteBuffer)} */
  8671.     public static native void nglTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, long pixels, long __functionAddress);
  8672.  
  8673.     /**
  8674.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glTexImage1D.xml">OpenGL SDK Reference</a>
  8675.      * <p/>
  8676.      * One-dimensional version of {@link #glTexImage2D(int, int, int, int, int, int, int, int, ByteBuffer)}}.
  8677.      *
  8678.      * @param target         the texture target. One of:<p/>{@link #GL_TEXTURE_1D}, {@link #GL_PROXY_TEXTURE_1D}
  8679.      * @param level          the level-of-detail number
  8680.      * @param internalformat the texture internal format
  8681.      * @param width          the texture width
  8682.      * @param border         the texture border width
  8683.      * @param format         the texel data format
  8684.      * @param type           the texel data type
  8685.      * @param pixels         the texel data
  8686.      */
  8687.     public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, ByteBuffer pixels) {
  8688.         long __functionAddress = getInstance().glTexImage1D;
  8689.         if ( LWJGLUtil.CHECKS ) {
  8690.             checkFunctionAddress(__functionAddress);
  8691.             checkBuffer(pixels, width * GLChecks.getPixelBytes(format, type));
  8692.             GLChecks.ensureBufferObject(0x88EF, false);
  8693.         }
  8694.         nglTexImage1D(target, level, internalformat, width, border, format, type, memAddress(pixels), __functionAddress);
  8695.     }
  8696.  
  8697.     /** Buffer object offset version of: {@link #glTexImage1D(int, int, int, int, int, int, int, ByteBuffer)} */
  8698.     public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, long pixelsOffset) {
  8699.         long __functionAddress = getInstance().glTexImage1D;
  8700.         if ( LWJGLUtil.CHECKS ) {
  8701.             checkFunctionAddress(__functionAddress);
  8702.             GLChecks.ensureBufferObject(0x88EF, true);
  8703.         }
  8704.         nglTexImage1D(target, level, internalformat, width, border, format, type, pixelsOffset, __functionAddress);
  8705.     }
  8706.  
  8707.     /** ShortBuffer version of: {@link #glTexImage1D(int, int, int, int, int, int, int, ByteBuffer)} */
  8708.     public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, ShortBuffer pixels) {
  8709.         long __functionAddress = getInstance().glTexImage1D;
  8710.         if ( LWJGLUtil.CHECKS ) {
  8711.             checkFunctionAddress(__functionAddress);
  8712.             checkBuffer(pixels, (width * GLChecks.getPixelBytes(format, type)) >> 1);
  8713.             GLChecks.ensureBufferObject(0x88EF, false);
  8714.         }
  8715.         nglTexImage1D(target, level, internalformat, width, border, format, type, memAddress(pixels), __functionAddress);
  8716.     }
  8717.  
  8718.     /** IntBuffer version of: {@link #glTexImage1D(int, int, int, int, int, int, int, ByteBuffer)} */
  8719.     public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, IntBuffer pixels) {
  8720.         long __functionAddress = getInstance().glTexImage1D;
  8721.         if ( LWJGLUtil.CHECKS ) {
  8722.             checkFunctionAddress(__functionAddress);
  8723.             checkBuffer(pixels, (width * GLChecks.getPixelBytes(format, type)) >> 2);
  8724.             GLChecks.ensureBufferObject(0x88EF, false);
  8725.         }
  8726.         nglTexImage1D(target, level, internalformat, width, border, format, type, memAddress(pixels), __functionAddress);
  8727.     }
  8728.  
  8729.     /** FloatBuffer version of: {@link #glTexImage1D(int, int, int, int, int, int, int, ByteBuffer)} */
  8730.     public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, FloatBuffer pixels) {
  8731.         long __functionAddress = getInstance().glTexImage1D;
  8732.         if ( LWJGLUtil.CHECKS ) {
  8733.             checkFunctionAddress(__functionAddress);
  8734.             checkBuffer(pixels, (width * GLChecks.getPixelBytes(format, type)) >> 2);
  8735.             GLChecks.ensureBufferObject(0x88EF, false);
  8736.         }
  8737.         nglTexImage1D(target, level, internalformat, width, border, format, type, memAddress(pixels), __functionAddress);
  8738.     }
  8739.  
  8740.     /** DoubleBuffer version of: {@link #glTexImage1D(int, int, int, int, int, int, int, ByteBuffer)} */
  8741.     public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, DoubleBuffer pixels) {
  8742.         long __functionAddress = getInstance().glTexImage1D;
  8743.         if ( LWJGLUtil.CHECKS ) {
  8744.             checkFunctionAddress(__functionAddress);
  8745.             checkBuffer(pixels, (width * GLChecks.getPixelBytes(format, type)) >> 3);
  8746.             GLChecks.ensureBufferObject(0x88EF, false);
  8747.         }
  8748.         nglTexImage1D(target, level, internalformat, width, border, format, type, memAddress(pixels), __functionAddress);
  8749.     }
  8750.  
  8751.     // --- [ glCopyTexImage2D ] ---
  8752.  
  8753.     /** JNI method for {@link #glCopyTexImage2D(int, int, int, int, int, int, int, int)} */
  8754.     public static native void nglCopyTexImage2D(int target, int level, int internalFormat, int x, int y, int width, int height, int border, long __functionAddress);
  8755.  
  8756.     /**
  8757.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glCopyTexImage2D.xml">OpenGL SDK Reference</a>
  8758.      * <p/>
  8759.      * Defines a two-dimensional texel array in exactly the manner of {@link #glTexImage2D(int, int, int, int, int, int, int, int, ByteBuffer)}, except that the image data are taken from the framebuffer rather
  8760.      * than from client memory.
  8761.      * <p/>
  8762.      * {@code x}, {@code y}, {@code width}, and {@code height} correspond precisely to the corresponding arguments to {@link #glReadPixels(int, int, int, int, int, int, ByteBuffer)}; they specify the
  8763.      * image's width and height, and the lower left (x, y) coordinates of the framebuffer region to be copied.
  8764.      * <p/>
  8765.      * The image is taken from the framebuffer exactly as if these arguments were passed to {@link #glCopyPixels(int, int, int, int, int)} with argument type set to {@link #GL_COLOR},
  8766.      * {@link #GL_DEPTH}, or {@link GL30#GL_DEPTH_STENCIL}, depending on {@code internalformat}. RGBA data is taken from the current color buffer, while depth
  8767.      * component and stencil index data are taken from the depth and stencil buffers, respectively.
  8768.      * <p/>
  8769.      * Subsequent processing is identical to that described for {@link #glTexImage2D(int, int, int, int, int, int, int, int, ByteBuffer)}, beginning with clamping of the R, G, B, A, or depth values, and masking
  8770.      * of the stencil index values from the resulting pixel groups. Parameters {@code level}, {@code internalformat}, and {@code border} are specified using
  8771.      * the same values, with the same meanings, as the corresponding arguments of {@link #glTexImage2D(int, int, int, int, int, int, int, int, ByteBuffer)}.
  8772.      * <p/>
  8773.      * The constraints on width, height, and border are exactly those for the corresponding arguments of {@link #glTexImage2D(int, int, int, int, int, int, int, int, ByteBuffer)}.
  8774.      *
  8775.      * @param target         the texture target. One of:<p/>{@link GL11#GL_TEXTURE_2D}, {@link GL30#GL_TEXTURE_1D_ARRAY}, {@link GL31#GL_TEXTURE_RECTANGLE}, {@link GL13#GL_TEXTURE_CUBE_MAP}
  8776.      * @param level          the level-of-detail number
  8777.      * @param internalFormat the texture internal format. See {@link #glTexImage2D(int, int, int, int, int, int, int, int, ByteBuffer)} for a list of supported formats.
  8778.      * @param x              the left framebuffer pixel coordinate
  8779.      * @param y              the lower framebuffer pixel coordinate
  8780.      * @param width          the texture width
  8781.      * @param height         the texture height
  8782.      * @param border         the texture border width
  8783.      */
  8784.     public static void glCopyTexImage2D(int target, int level, int internalFormat, int x, int y, int width, int height, int border) {
  8785.         long __functionAddress = getInstance().glCopyTexImage2D;
  8786.         if ( LWJGLUtil.CHECKS )
  8787.             checkFunctionAddress(__functionAddress);
  8788.         nglCopyTexImage2D(target, level, internalFormat, x, y, width, height, border, __functionAddress);
  8789.     }
  8790.  
  8791.     // --- [ glCopyTexImage1D ] ---
  8792.  
  8793.     /** JNI method for {@link #glCopyTexImage1D(int, int, int, int, int, int, int)} */
  8794.     public static native void nglCopyTexImage1D(int target, int level, int internalFormat, int x, int y, int width, int border, long __functionAddress);
  8795.  
  8796.     /**
  8797.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glCopyTexImage1D.xml">OpenGL SDK Reference</a>
  8798.      * <p/>
  8799.      * Defines a one-dimensional texel array in exactly the manner of {@link #glTexImage1D(int, int, int, int, int, int, int, ByteBuffer)}, except that the image data are taken from the framebuffer rather
  8800.      * than from client memory. For the purposes of decoding the texture image, {@code CopyTexImage1D} is equivalent to calling {@link #glCopyTexImage2D(int, int, int, int, int, int, int, int)}
  8801.      * with corresponding arguments and height of 1, except that the height of the image is always 1, regardless of the value of border. level, internalformat,
  8802.      * and border are specified using the same values, with the same meanings, as the corresponding arguments of {@link #glTexImage1D(int, int, int, int, int, int, int, ByteBuffer)}. The constraints on
  8803.      * width and border are exactly those of the corresponding arguments of {@link #glTexImage1D(int, int, int, int, int, int, int, ByteBuffer)}.
  8804.      *
  8805.      * @param target         the texture target. Must be:<p/>{@link #GL_TEXTURE_1D}
  8806.      * @param level          the level-of-detail number
  8807.      * @param internalFormat the texture internal format. See {@link #glTexImage2D(int, int, int, int, int, int, int, int, ByteBuffer)} for a list of supported formats.
  8808.      * @param x              the left framebuffer pixel coordinate
  8809.      * @param y              the lower framebuffer pixel coordinate
  8810.      * @param width          the texture width
  8811.      * @param border         the texture border width
  8812.      */
  8813.     public static void glCopyTexImage1D(int target, int level, int internalFormat, int x, int y, int width, int border) {
  8814.         long __functionAddress = getInstance().glCopyTexImage1D;
  8815.         if ( LWJGLUtil.CHECKS )
  8816.             checkFunctionAddress(__functionAddress);
  8817.         nglCopyTexImage1D(target, level, internalFormat, x, y, width, border, __functionAddress);
  8818.     }
  8819.  
  8820.     // --- [ glCopyTexSubImage1D ] ---
  8821.  
  8822.     /** JNI method for {@link #glCopyTexSubImage1D(int, int, int, int, int, int)} */
  8823.     public static native void nglCopyTexSubImage1D(int target, int level, int xoffset, int x, int y, int width, long __functionAddress);
  8824.  
  8825.     /**
  8826.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glCopyTexSubImage1D.xml">OpenGL SDK Reference</a>
  8827.      * <p/>
  8828.      * Respecifies a rectangular subregion of an existing texel array. No change is made to the {@code internalformat}, {@code width} or {@code border}
  8829.      * parameters of the specified texel array, nor is any change made to texel values outside the specified subregion. See {@link #glCopyTexImage1D(int, int, int, int, int, int, int)} for more
  8830.      * details.
  8831.      *
  8832.      * @param target  the texture target. Must be:<p/>{@link #GL_TEXTURE_1D}
  8833.      * @param level   the level-of-detail number
  8834.      * @param xoffset the left texel coordinate of the texture subregion to update
  8835.      * @param x       the left framebuffer pixel coordinate
  8836.      * @param y       the lower framebuffer pixel coordinate
  8837.      * @param width   the texture subregion width
  8838.      */
  8839.     public static void glCopyTexSubImage1D(int target, int level, int xoffset, int x, int y, int width) {
  8840.         long __functionAddress = getInstance().glCopyTexSubImage1D;
  8841.         if ( LWJGLUtil.CHECKS )
  8842.             checkFunctionAddress(__functionAddress);
  8843.         nglCopyTexSubImage1D(target, level, xoffset, x, y, width, __functionAddress);
  8844.     }
  8845.  
  8846.     // --- [ glCopyTexSubImage2D ] ---
  8847.  
  8848.     /** JNI method for {@link #glCopyTexSubImage2D(int, int, int, int, int, int, int, int)} */
  8849.     public static native void nglCopyTexSubImage2D(int target, int level, int xoffset, int yoffset, int x, int y, int width, int height, long __functionAddress);
  8850.  
  8851.     /**
  8852.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glCopyTexSubImage2D.xml">OpenGL SDK Reference</a>
  8853.      * <p/>
  8854.      * Respecifies a rectangular subregion of an existing texel array. No change is made to the {@code internalformat}, {@code width}, {@code height},
  8855.      * or {@code border} parameters of the specified texel array, nor is any change made to texel values outside the specified subregion. See
  8856.      * {@link #glCopyTexImage2D(int, int, int, int, int, int, int, int)} for more details.
  8857.      *
  8858.      * @param target  the texture target. One of:<p/>{@link GL11#GL_TEXTURE_2D}, {@link GL30#GL_TEXTURE_1D_ARRAY}, {@link GL31#GL_TEXTURE_RECTANGLE}, {@link GL13#GL_TEXTURE_CUBE_MAP}
  8859.      * @param level   the level-of-detail number
  8860.      * @param xoffset the left texel coordinate of the texture subregion to update
  8861.      * @param yoffset the lower texel coordinate of the texture subregion to update
  8862.      * @param x       the left framebuffer pixel coordinate
  8863.      * @param y       the lower framebuffer pixel coordinate
  8864.      * @param width   the texture subregion width
  8865.      * @param height  the texture subregion height
  8866.      */
  8867.     public static void glCopyTexSubImage2D(int target, int level, int xoffset, int yoffset, int x, int y, int width, int height) {
  8868.         long __functionAddress = getInstance().glCopyTexSubImage2D;
  8869.         if ( LWJGLUtil.CHECKS )
  8870.             checkFunctionAddress(__functionAddress);
  8871.         nglCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height, __functionAddress);
  8872.     }
  8873.  
  8874.     // --- [ glTexParameteri ] ---
  8875.  
  8876.     /** JNI method for {@link #glTexParameteri(int, int, int)} */
  8877.     public static native void nglTexParameteri(int target, int pname, int param, long __functionAddress);
  8878.  
  8879.     /**
  8880.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glTexParameteri.xml">OpenGL SDK Reference</a>
  8881.      * <p/>
  8882.      * Sets the integer value of a texture parameter, which controls how the texel array is treated when specified or changed, and when applied to a fragment.
  8883.      *
  8884.      * @param target the texture target. One of:<p/>{@link #GL_TEXTURE_1D}, {@link #GL_TEXTURE_2D}, {@link #GL_TEXTURE_3D}, {@link #GL_TEXTURE_1D_ARRAY}, {@link #GL_TEXTURE_2D_ARRAY}, {@link #GL_TEXTURE_RECTANGLE}, {@link #GL_TEXTURE_CUBE_MAP}, {@link #GL_TEXTURE_CUBE_MAP_ARRAY}, {@link #GL_TEXTURE_2D_MULTISAMPLE}, {@link #GL_TEXTURE_2D_MULTISAMPLE_ARRAY}
  8885.      * @param pname  the parameter to set. One of:<p/>{@link #GL_TEXTURE_BASE_LEVEL}, {@link #GL_TEXTURE_BORDER_COLOR}, {@link #GL_TEXTURE_COMPARE_MODE}, {@link #GL_TEXTURE_COMPARE_FUNC}, {@link #GL_TEXTURE_LOD_BIAS}, {@link #GL_TEXTURE_MAG_FILTER}, {@link #GL_TEXTURE_MAX_LEVEL}, {@link #GL_TEXTURE_MAX_LOD}, {@link #GL_TEXTURE_MIN_FILTER}, {@link #GL_TEXTURE_MIN_LOD}, {@link #GL_TEXTURE_PRIORITY}, {@link #GL_TEXTURE_SWIZZLE_R}, {@link #GL_TEXTURE_SWIZZLE_G}, {@link #GL_TEXTURE_SWIZZLE_B}, {@link #GL_TEXTURE_SWIZZLE_A}, {@link #GL_TEXTURE_SWIZZLE_RGBA}, {@link #GL_TEXTURE_WRAP_S}, {@link #GL_TEXTURE_WRAP_T}, {@link #GL_TEXTURE_WRAP_R}, {@link #GL_DEPTH_TEXTURE_MODE}, {@link #GL_DEPTH_TEXTURE_STENCIL_MODE}, {@link #GL_GENERATE_MIPMAP}
  8886.      * @param param  the parameter value
  8887.      */
  8888.     public static void glTexParameteri(int target, int pname, int param) {
  8889.         long __functionAddress = getInstance().glTexParameteri;
  8890.         if ( LWJGLUtil.CHECKS )
  8891.             checkFunctionAddress(__functionAddress);
  8892.         nglTexParameteri(target, pname, param, __functionAddress);
  8893.     }
  8894.  
  8895.     // --- [ glTexParameteriv ] ---
  8896.  
  8897.     /** JNI method for {@link #glTexParameteri(int, int, ByteBuffer)} */
  8898.     public static native void nglTexParameteriv(int target, int pname, long params, long __functionAddress);
  8899.  
  8900.     /**
  8901.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glTexParameter.xml">OpenGL SDK Reference</a>
  8902.      * <p/>
  8903.      * Pointer version of {@link #glTexParameteri(int, int, int)}.
  8904.      *
  8905.      * @param target the texture target
  8906.      * @param pname  the parameter to set
  8907.      * @param params the parameter value
  8908.      */
  8909.     public static void glTexParameteri(int target, int pname, ByteBuffer params) {
  8910.         long __functionAddress = getInstance().glTexParameteriv;
  8911.         if ( LWJGLUtil.CHECKS ) {
  8912.             checkFunctionAddress(__functionAddress);
  8913.             checkBuffer(params, 4 << 2);
  8914.         }
  8915.         nglTexParameteriv(target, pname, memAddress(params), __functionAddress);
  8916.     }
  8917.  
  8918.     /** Alternative version of: {@link #glTexParameteri(int, int, ByteBuffer)} */
  8919.     public static void glTexParameter(int target, int pname, IntBuffer params) {
  8920.         long __functionAddress = getInstance().glTexParameteriv;
  8921.         if ( LWJGLUtil.CHECKS ) {
  8922.             checkFunctionAddress(__functionAddress);
  8923.             checkBuffer(params, 4);
  8924.         }
  8925.         nglTexParameteriv(target, pname, memAddress(params), __functionAddress);
  8926.     }
  8927.  
  8928.     // --- [ glTexParameterf ] ---
  8929.  
  8930.     /** JNI method for {@link #glTexParameterf(int, int, float)} */
  8931.     public static native void nglTexParameterf(int target, int pname, float param, long __functionAddress);
  8932.  
  8933.     /**
  8934.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glTexParameterf.xml">OpenGL SDK Reference</a>
  8935.      * <p/>
  8936.      * Float version of {@link #glTexParameteri(int, int, int)}.
  8937.      *
  8938.      * @param target the texture target
  8939.      * @param pname  the parameter to set
  8940.      * @param param  the parameter value
  8941.      */
  8942.     public static void glTexParameterf(int target, int pname, float param) {
  8943.         long __functionAddress = getInstance().glTexParameterf;
  8944.         if ( LWJGLUtil.CHECKS )
  8945.             checkFunctionAddress(__functionAddress);
  8946.         nglTexParameterf(target, pname, param, __functionAddress);
  8947.     }
  8948.  
  8949.     // --- [ glTexParameterfv ] ---
  8950.  
  8951.     /** JNI method for {@link #glTexParameterf(int, int, ByteBuffer)} */
  8952.     public static native void nglTexParameterfv(int target, int pname, long params, long __functionAddress);
  8953.  
  8954.     /**
  8955.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glTexParameter.xml">OpenGL SDK Reference</a>
  8956.      * <p/>
  8957.      * Pointer version of {@link #glTexParameterf(int, int, float)}.
  8958.      *
  8959.      * @param target the texture target
  8960.      * @param pname  the parameter to set
  8961.      * @param params the parameter value
  8962.      */
  8963.     public static void glTexParameterf(int target, int pname, ByteBuffer params) {
  8964.         long __functionAddress = getInstance().glTexParameterfv;
  8965.         if ( LWJGLUtil.CHECKS ) {
  8966.             checkFunctionAddress(__functionAddress);
  8967.             checkBuffer(params, 4 << 2);
  8968.         }
  8969.         nglTexParameterfv(target, pname, memAddress(params), __functionAddress);
  8970.     }
  8971.  
  8972.     /** Alternative version of: {@link #glTexParameterf(int, int, ByteBuffer)} */
  8973.     public static void glTexParameter(int target, int pname, FloatBuffer params) {
  8974.         long __functionAddress = getInstance().glTexParameterfv;
  8975.         if ( LWJGLUtil.CHECKS ) {
  8976.             checkFunctionAddress(__functionAddress);
  8977.             checkBuffer(params, 4);
  8978.         }
  8979.         nglTexParameterfv(target, pname, memAddress(params), __functionAddress);
  8980.     }
  8981.  
  8982.     // --- [ glTexSubImage1D ] ---
  8983.  
  8984.     /** JNI method for {@link #glTexSubImage1D(int, int, int, int, int, int, ByteBuffer)} */
  8985.     public static native void nglTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, long pixels, long __functionAddress);
  8986.  
  8987.     /**
  8988.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glTexSubImage1D.xml">OpenGL SDK Reference</a>
  8989.      * <p/>
  8990.      * One-dimensional version of {@link #glTexSubImage2D(int, int, int, int, int, int, int, int, ByteBuffer)}.
  8991.      *
  8992.      * @param target  the texture target. Must be:<p/>{@link #GL_TEXTURE_1D}
  8993.      * @param level   the level-of-detail-number
  8994.      * @param xoffset the left coordinate of the texel subregion
  8995.      * @param width   the subregion width
  8996.      * @param format  the pixel data format. One of:<p/>{@link GL11#GL_STENCIL_INDEX}, {@link GL11#GL_DEPTH_COMPONENT}, {@link GL30#GL_DEPTH_STENCIL}, {@link GL11#GL_RED}, {@link GL11#GL_GREEN}, {@link GL11#GL_BLUE}, {@link GL11#GL_ALPHA}, {@link GL11#GL_RG}, {@link GL11#GL_RGB}, {@link GL11#GL_RGBA}, {@link GL11#GL_BGR}, {@link GL11#GL_BGRA}, {@link GL11#GL_LUMINANCE}, {@link GL11#GL_LUMINANCE_ALPHA}, {@link GL30#GL_RED_INTEGER}, {@link GL30#GL_GREEN_INTEGER}, {@link GL30#GL_BLUE_INTEGER}, {@link GL30#GL_ALPHA_INTEGER}, {@link GL30#GL_RG_INTEGER}, {@link GL30#GL_RGB_INTEGER}, {@link GL30#GL_RGBA_INTEGER}, {@link GL30#GL_BGR_INTEGER}, {@link GL30#GL_BGRA_INTEGER}
  8997.      * @param type    the pixel data type. One of:<p/>{@link GL11#GL_UNSIGNED_BYTE}, {@link GL11#GL_BYTE}, {@link GL11#GL_UNSIGNED_SHORT}, {@link GL11#GL_SHORT}, {@link GL11#GL_UNSIGNED_INT}, {@link GL11#GL_INT}, {@link GL30#GL_HALF_FLOAT}, {@link GL11#GL_FLOAT}, {@link GL12#GL_UNSIGNED_BYTE_3_3_2}, {@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV}, {@link GL12#GL_UNSIGNED_SHORT_5_6_5}, {@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV}, {@link GL12#GL_UNSIGNED_SHORT_4_4_4_4}, {@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV}, {@link GL12#GL_UNSIGNED_SHORT_5_5_5_1}, {@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV}, {@link GL12#GL_UNSIGNED_INT_8_8_8_8}, {@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV}, {@link GL12#GL_UNSIGNED_INT_10_10_10_2}, {@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV}, {@link GL30#GL_UNSIGNED_INT_24_8}, {@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV}, {@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV}, {@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV}, {@link GL11#GL_BITMAP}
  8998.      * @param pixels  the pixel data
  8999.      */
  9000.     public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, ByteBuffer pixels) {
  9001.         long __functionAddress = getInstance().glTexSubImage1D;
  9002.         if ( LWJGLUtil.CHECKS ) {
  9003.             checkFunctionAddress(__functionAddress);
  9004.             checkBuffer(pixels, width * GLChecks.getPixelBytes(format, type));
  9005.             GLChecks.ensureBufferObject(0x88EF, false);
  9006.         }
  9007.         nglTexSubImage1D(target, level, xoffset, width, format, type, memAddress(pixels), __functionAddress);
  9008.     }
  9009.  
  9010.     /** Buffer object offset version of: {@link #glTexSubImage1D(int, int, int, int, int, int, ByteBuffer)} */
  9011.     public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, long pixelsOffset) {
  9012.         long __functionAddress = getInstance().glTexSubImage1D;
  9013.         if ( LWJGLUtil.CHECKS ) {
  9014.             checkFunctionAddress(__functionAddress);
  9015.             GLChecks.ensureBufferObject(0x88EF, true);
  9016.         }
  9017.         nglTexSubImage1D(target, level, xoffset, width, format, type, pixelsOffset, __functionAddress);
  9018.     }
  9019.  
  9020.     /** ShortBuffer version of: {@link #glTexSubImage1D(int, int, int, int, int, int, ByteBuffer)} */
  9021.     public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, ShortBuffer pixels) {
  9022.         long __functionAddress = getInstance().glTexSubImage1D;
  9023.         if ( LWJGLUtil.CHECKS ) {
  9024.             checkFunctionAddress(__functionAddress);
  9025.             checkBuffer(pixels, (width * GLChecks.getPixelBytes(format, type)) >> 1);
  9026.             GLChecks.ensureBufferObject(0x88EF, false);
  9027.         }
  9028.         nglTexSubImage1D(target, level, xoffset, width, format, type, memAddress(pixels), __functionAddress);
  9029.     }
  9030.  
  9031.     /** IntBuffer version of: {@link #glTexSubImage1D(int, int, int, int, int, int, ByteBuffer)} */
  9032.     public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, IntBuffer pixels) {
  9033.         long __functionAddress = getInstance().glTexSubImage1D;
  9034.         if ( LWJGLUtil.CHECKS ) {
  9035.             checkFunctionAddress(__functionAddress);
  9036.             checkBuffer(pixels, (width * GLChecks.getPixelBytes(format, type)) >> 2);
  9037.             GLChecks.ensureBufferObject(0x88EF, false);
  9038.         }
  9039.         nglTexSubImage1D(target, level, xoffset, width, format, type, memAddress(pixels), __functionAddress);
  9040.     }
  9041.  
  9042.     /** FloatBuffer version of: {@link #glTexSubImage1D(int, int, int, int, int, int, ByteBuffer)} */
  9043.     public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, FloatBuffer pixels) {
  9044.         long __functionAddress = getInstance().glTexSubImage1D;
  9045.         if ( LWJGLUtil.CHECKS ) {
  9046.             checkFunctionAddress(__functionAddress);
  9047.             checkBuffer(pixels, (width * GLChecks.getPixelBytes(format, type)) >> 2);
  9048.             GLChecks.ensureBufferObject(0x88EF, false);
  9049.         }
  9050.         nglTexSubImage1D(target, level, xoffset, width, format, type, memAddress(pixels), __functionAddress);
  9051.     }
  9052.  
  9053.     /** DoubleBuffer version of: {@link #glTexSubImage1D(int, int, int, int, int, int, ByteBuffer)} */
  9054.     public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, DoubleBuffer pixels) {
  9055.         long __functionAddress = getInstance().glTexSubImage1D;
  9056.         if ( LWJGLUtil.CHECKS ) {
  9057.             checkFunctionAddress(__functionAddress);
  9058.             checkBuffer(pixels, (width * GLChecks.getPixelBytes(format, type)) >> 3);
  9059.             GLChecks.ensureBufferObject(0x88EF, false);
  9060.         }
  9061.         nglTexSubImage1D(target, level, xoffset, width, format, type, memAddress(pixels), __functionAddress);
  9062.     }
  9063.  
  9064.     // --- [ glTexSubImage2D ] ---
  9065.  
  9066.     /** JNI method for {@link #glTexSubImage2D(int, int, int, int, int, int, int, int, ByteBuffer)} */
  9067.     public static native void nglTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, long pixels, long __functionAddress);
  9068.  
  9069.     /**
  9070.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glTexSubImage2D.xml">OpenGL SDK Reference</a>
  9071.      * <p/>
  9072.      * Respecifies a rectangular subregion of an existing texel array. No change is made to the internalformat, width, height, depth, or border parameters of
  9073.      * the specified texel array, nor is any change made to texel values outside the specified subregion.
  9074.      *
  9075.      * @param target  the texture target. One of:<p/>{@link GL11#GL_TEXTURE_2D}, {@link GL30#GL_TEXTURE_1D_ARRAY}, {@link GL31#GL_TEXTURE_RECTANGLE}, {@link GL13#GL_TEXTURE_CUBE_MAP}
  9076.      * @param level   the level-of-detail-number
  9077.      * @param xoffset the left coordinate of the texel subregion
  9078.      * @param yoffset the bottom coordinate of the texel subregion
  9079.      * @param width   the subregion width
  9080.      * @param height  the subregion height
  9081.      * @param format  the pixel data format. One of:<p/>{@link GL11#GL_STENCIL_INDEX}, {@link GL11#GL_DEPTH_COMPONENT}, {@link GL30#GL_DEPTH_STENCIL}, {@link GL11#GL_RED}, {@link GL11#GL_GREEN}, {@link GL11#GL_BLUE}, {@link GL11#GL_ALPHA}, {@link GL11#GL_RG}, {@link GL11#GL_RGB}, {@link GL11#GL_RGBA}, {@link GL11#GL_BGR}, {@link GL11#GL_BGRA}, {@link GL11#GL_LUMINANCE}, {@link GL11#GL_LUMINANCE_ALPHA}, {@link GL30#GL_RED_INTEGER}, {@link GL30#GL_GREEN_INTEGER}, {@link GL30#GL_BLUE_INTEGER}, {@link GL30#GL_ALPHA_INTEGER}, {@link GL30#GL_RG_INTEGER}, {@link GL30#GL_RGB_INTEGER}, {@link GL30#GL_RGBA_INTEGER}, {@link GL30#GL_BGR_INTEGER}, {@link GL30#GL_BGRA_INTEGER}
  9082.      * @param type    the pixel data type. One of:<p/>{@link GL11#GL_UNSIGNED_BYTE}, {@link GL11#GL_BYTE}, {@link GL11#GL_UNSIGNED_SHORT}, {@link GL11#GL_SHORT}, {@link GL11#GL_UNSIGNED_INT}, {@link GL11#GL_INT}, {@link GL30#GL_HALF_FLOAT}, {@link GL11#GL_FLOAT}, {@link GL12#GL_UNSIGNED_BYTE_3_3_2}, {@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV}, {@link GL12#GL_UNSIGNED_SHORT_5_6_5}, {@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV}, {@link GL12#GL_UNSIGNED_SHORT_4_4_4_4}, {@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV}, {@link GL12#GL_UNSIGNED_SHORT_5_5_5_1}, {@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV}, {@link GL12#GL_UNSIGNED_INT_8_8_8_8}, {@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV}, {@link GL12#GL_UNSIGNED_INT_10_10_10_2}, {@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV}, {@link GL30#GL_UNSIGNED_INT_24_8}, {@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV}, {@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV}, {@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV}, {@link GL11#GL_BITMAP}
  9083.      * @param pixels  the pixel data
  9084.      */
  9085.     public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, ByteBuffer pixels) {
  9086.         long __functionAddress = getInstance().glTexSubImage2D;
  9087.         if ( LWJGLUtil.CHECKS ) {
  9088.             checkFunctionAddress(__functionAddress);
  9089.             checkBuffer(pixels, width * height * GLChecks.getPixelBytes(format, type));
  9090.             GLChecks.ensureBufferObject(0x88EF, false);
  9091.         }
  9092.         nglTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, memAddress(pixels), __functionAddress);
  9093.     }
  9094.  
  9095.     /** Buffer object offset version of: {@link #glTexSubImage2D(int, int, int, int, int, int, int, int, ByteBuffer)} */
  9096.     public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, long pixelsOffset) {
  9097.         long __functionAddress = getInstance().glTexSubImage2D;
  9098.         if ( LWJGLUtil.CHECKS ) {
  9099.             checkFunctionAddress(__functionAddress);
  9100.             GLChecks.ensureBufferObject(0x88EF, true);
  9101.         }
  9102.         nglTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixelsOffset, __functionAddress);
  9103.     }
  9104.  
  9105.     /** ShortBuffer version of: {@link #glTexSubImage2D(int, int, int, int, int, int, int, int, ByteBuffer)} */
  9106.     public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, ShortBuffer pixels) {
  9107.         long __functionAddress = getInstance().glTexSubImage2D;
  9108.         if ( LWJGLUtil.CHECKS ) {
  9109.             checkFunctionAddress(__functionAddress);
  9110.             checkBuffer(pixels, (width * height * GLChecks.getPixelBytes(format, type)) >> 1);
  9111.             GLChecks.ensureBufferObject(0x88EF, false);
  9112.         }
  9113.         nglTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, memAddress(pixels), __functionAddress);
  9114.     }
  9115.  
  9116.     /** IntBuffer version of: {@link #glTexSubImage2D(int, int, int, int, int, int, int, int, ByteBuffer)} */
  9117.     public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, IntBuffer pixels) {
  9118.         long __functionAddress = getInstance().glTexSubImage2D;
  9119.         if ( LWJGLUtil.CHECKS ) {
  9120.             checkFunctionAddress(__functionAddress);
  9121.             checkBuffer(pixels, (width * height * GLChecks.getPixelBytes(format, type)) >> 2);
  9122.             GLChecks.ensureBufferObject(0x88EF, false);
  9123.         }
  9124.         nglTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, memAddress(pixels), __functionAddress);
  9125.     }
  9126.  
  9127.     /** FloatBuffer version of: {@link #glTexSubImage2D(int, int, int, int, int, int, int, int, ByteBuffer)} */
  9128.     public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, FloatBuffer pixels) {
  9129.         long __functionAddress = getInstance().glTexSubImage2D;
  9130.         if ( LWJGLUtil.CHECKS ) {
  9131.             checkFunctionAddress(__functionAddress);
  9132.             checkBuffer(pixels, (width * height * GLChecks.getPixelBytes(format, type)) >> 2);
  9133.             GLChecks.ensureBufferObject(0x88EF, false);
  9134.         }
  9135.         nglTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, memAddress(pixels), __functionAddress);
  9136.     }
  9137.  
  9138.     /** DoubleBuffer version of: {@link #glTexSubImage2D(int, int, int, int, int, int, int, int, ByteBuffer)} */
  9139.     public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, DoubleBuffer pixels) {
  9140.         long __functionAddress = getInstance().glTexSubImage2D;
  9141.         if ( LWJGLUtil.CHECKS ) {
  9142.             checkFunctionAddress(__functionAddress);
  9143.             checkBuffer(pixels, (width * height * GLChecks.getPixelBytes(format, type)) >> 3);
  9144.             GLChecks.ensureBufferObject(0x88EF, false);
  9145.         }
  9146.         nglTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, memAddress(pixels), __functionAddress);
  9147.     }
  9148.  
  9149.     // --- [ glTranslatef ] ---
  9150.  
  9151.     /** JNI method for {@link #glTranslatef(float, float, float)} */
  9152.     public static native void nglTranslatef(float x, float y, float z, long __functionAddress);
  9153.  
  9154.     /**
  9155.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9156.      * <p/>
  9157.      * Manipulates the current matrix with a translation matrix along the x-, y- and z- axes.
  9158.      * <p/>
  9159.      * Calling this function is equivalent to calling {@link #glMultMatrixf(ByteBuffer)} with the following matrix:
  9160.      * <table border="1" cellspacing="0" cellpadding="2"><tr align="center"><td>1</td><td>0</td><td>0</td><td>x</td></tr><tr align="center"><td>0</td><td>1</td><td>0</td><td>y</td></tr><tr align="center"><td>0</td><td>0</td><td>1</td><td>z</td></tr><tr align="center"><td>0</td><td>0</td><td>0</td><td>1</td></tr></table>
  9161.      *
  9162.      * @param x the x-axis translation
  9163.      * @param y the y-axis translation
  9164.      * @param z the z-axis translation
  9165.      */
  9166.     public static void glTranslatef(float x, float y, float z) {
  9167.         long __functionAddress = getInstance().glTranslatef;
  9168.         if ( LWJGLUtil.CHECKS )
  9169.             checkFunctionAddress(__functionAddress);
  9170.         nglTranslatef(x, y, z, __functionAddress);
  9171.     }
  9172.  
  9173.     // --- [ glTranslated ] ---
  9174.  
  9175.     /** JNI method for {@link #glTranslated(double, double, double)} */
  9176.     public static native void nglTranslated(double x, double y, double z, long __functionAddress);
  9177.  
  9178.     /**
  9179.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9180.      * <p/>
  9181.      * Double version of {@link #glTranslatef(float, float, float)}.
  9182.      *
  9183.      * @param x the x-axis translation
  9184.      * @param y the y-axis translation
  9185.      * @param z the z-axis translation
  9186.      */
  9187.     public static void glTranslated(double x, double y, double z) {
  9188.         long __functionAddress = getInstance().glTranslated;
  9189.         if ( LWJGLUtil.CHECKS )
  9190.             checkFunctionAddress(__functionAddress);
  9191.         nglTranslated(x, y, z, __functionAddress);
  9192.     }
  9193.  
  9194.     // --- [ glVertex2f ] ---
  9195.  
  9196.     /** JNI method for {@link #glVertex2f(float, float)} */
  9197.     public static native void nglVertex2f(float x, float y, long __functionAddress);
  9198.  
  9199.     /**
  9200.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9201.      * <p/>
  9202.      * Specifies a single vertex between {@link #glBegin(int)} and {@link #glEnd()} by giving its coordinates in two dimensions. The z coordinate is implicitly set
  9203.      * to zero and the w coordinate to one.
  9204.      *
  9205.      * @param x the vertex x coordinate
  9206.      * @param y the vertex y coordinate
  9207.      */
  9208.     public static void glVertex2f(float x, float y) {
  9209.         long __functionAddress = getInstance().glVertex2f;
  9210.         if ( LWJGLUtil.CHECKS )
  9211.             checkFunctionAddress(__functionAddress);
  9212.         nglVertex2f(x, y, __functionAddress);
  9213.     }
  9214.  
  9215.     // --- [ glVertex2s ] ---
  9216.  
  9217.     /** JNI method for {@link #glVertex2s(short, short)} */
  9218.     public static native void nglVertex2s(short x, short y, long __functionAddress);
  9219.  
  9220.     /**
  9221.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9222.      * <p/>
  9223.      * Short version of {@link #glVertex2f(float, float)}.
  9224.      *
  9225.      * @param x the vertex x coordinate
  9226.      * @param y the vertex y coordinate
  9227.      */
  9228.     public static void glVertex2s(short x, short y) {
  9229.         long __functionAddress = getInstance().glVertex2s;
  9230.         if ( LWJGLUtil.CHECKS )
  9231.             checkFunctionAddress(__functionAddress);
  9232.         nglVertex2s(x, y, __functionAddress);
  9233.     }
  9234.  
  9235.     // --- [ glVertex2i ] ---
  9236.  
  9237.     /** JNI method for {@link #glVertex2i(int, int)} */
  9238.     public static native void nglVertex2i(int x, int y, long __functionAddress);
  9239.  
  9240.     /**
  9241.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9242.      * <p/>
  9243.      * Integer version of {@link #glVertex2f(float, float)}.
  9244.      *
  9245.      * @param x the vertex x coordinate
  9246.      * @param y the vertex y coordinate
  9247.      */
  9248.     public static void glVertex2i(int x, int y) {
  9249.         long __functionAddress = getInstance().glVertex2i;
  9250.         if ( LWJGLUtil.CHECKS )
  9251.             checkFunctionAddress(__functionAddress);
  9252.         nglVertex2i(x, y, __functionAddress);
  9253.     }
  9254.  
  9255.     // --- [ glVertex2d ] ---
  9256.  
  9257.     /** JNI method for {@link #glVertex2d(double, double)} */
  9258.     public static native void nglVertex2d(double x, double y, long __functionAddress);
  9259.  
  9260.     /**
  9261.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9262.      * <p/>
  9263.      * Double version of {@link #glVertex2f(float, float)}.
  9264.      *
  9265.      * @param x the vertex x coordinate
  9266.      * @param y the vertex y coordinate
  9267.      */
  9268.     public static void glVertex2d(double x, double y) {
  9269.         long __functionAddress = getInstance().glVertex2d;
  9270.         if ( LWJGLUtil.CHECKS )
  9271.             checkFunctionAddress(__functionAddress);
  9272.         nglVertex2d(x, y, __functionAddress);
  9273.     }
  9274.  
  9275.     // --- [ glVertex2fv ] ---
  9276.  
  9277.     /** JNI method for {@link #glVertex2f(ByteBuffer)} */
  9278.     public static native void nglVertex2fv(long coords, long __functionAddress);
  9279.  
  9280.     /**
  9281.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9282.      * <p/>
  9283.      * Pointer version of {@link #glVertex2f(float, float)}.
  9284.      *
  9285.      * @param coords the vertex buffer
  9286.      */
  9287.     public static void glVertex2f(ByteBuffer coords) {
  9288.         long __functionAddress = getInstance().glVertex2fv;
  9289.         if ( LWJGLUtil.CHECKS ) {
  9290.             checkFunctionAddress(__functionAddress);
  9291.             checkBuffer(coords, 2 << 2);
  9292.         }
  9293.         nglVertex2fv(memAddress(coords), __functionAddress);
  9294.     }
  9295.  
  9296.     /** Alternative version of: {@link #glVertex2f(ByteBuffer)} */
  9297.     public static void glVertex2(FloatBuffer coords) {
  9298.         long __functionAddress = getInstance().glVertex2fv;
  9299.         if ( LWJGLUtil.CHECKS ) {
  9300.             checkFunctionAddress(__functionAddress);
  9301.             checkBuffer(coords, 2);
  9302.         }
  9303.         nglVertex2fv(memAddress(coords), __functionAddress);
  9304.     }
  9305.  
  9306.     // --- [ glVertex2sv ] ---
  9307.  
  9308.     /** JNI method for {@link #glVertex2s(ByteBuffer)} */
  9309.     public static native void nglVertex2sv(long coords, long __functionAddress);
  9310.  
  9311.     /**
  9312.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9313.      * <p/>
  9314.      * Pointer version of {@link #glVertex2s(short, short)}.
  9315.      *
  9316.      * @param coords the vertex buffer
  9317.      */
  9318.     public static void glVertex2s(ByteBuffer coords) {
  9319.         long __functionAddress = getInstance().glVertex2sv;
  9320.         if ( LWJGLUtil.CHECKS ) {
  9321.             checkFunctionAddress(__functionAddress);
  9322.             checkBuffer(coords, 2 << 1);
  9323.         }
  9324.         nglVertex2sv(memAddress(coords), __functionAddress);
  9325.     }
  9326.  
  9327.     /** Alternative version of: {@link #glVertex2s(ByteBuffer)} */
  9328.     public static void glVertex2(ShortBuffer coords) {
  9329.         long __functionAddress = getInstance().glVertex2sv;
  9330.         if ( LWJGLUtil.CHECKS ) {
  9331.             checkFunctionAddress(__functionAddress);
  9332.             checkBuffer(coords, 2);
  9333.         }
  9334.         nglVertex2sv(memAddress(coords), __functionAddress);
  9335.     }
  9336.  
  9337.     // --- [ glVertex2iv ] ---
  9338.  
  9339.     /** JNI method for {@link #glVertex2i(ByteBuffer)} */
  9340.     public static native void nglVertex2iv(long coords, long __functionAddress);
  9341.  
  9342.     /**
  9343.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9344.      * <p/>
  9345.      * Pointer version of {@link #glVertex2i(int, int)}.
  9346.      *
  9347.      * @param coords the vertex buffer
  9348.      */
  9349.     public static void glVertex2i(ByteBuffer coords) {
  9350.         long __functionAddress = getInstance().glVertex2iv;
  9351.         if ( LWJGLUtil.CHECKS ) {
  9352.             checkFunctionAddress(__functionAddress);
  9353.             checkBuffer(coords, 2 << 2);
  9354.         }
  9355.         nglVertex2iv(memAddress(coords), __functionAddress);
  9356.     }
  9357.  
  9358.     /** Alternative version of: {@link #glVertex2i(ByteBuffer)} */
  9359.     public static void glVertex2(IntBuffer coords) {
  9360.         long __functionAddress = getInstance().glVertex2iv;
  9361.         if ( LWJGLUtil.CHECKS ) {
  9362.             checkFunctionAddress(__functionAddress);
  9363.             checkBuffer(coords, 2);
  9364.         }
  9365.         nglVertex2iv(memAddress(coords), __functionAddress);
  9366.     }
  9367.  
  9368.     // --- [ glVertex2dv ] ---
  9369.  
  9370.     /** JNI method for {@link #glVertex2d(ByteBuffer)} */
  9371.     public static native void nglVertex2dv(long coords, long __functionAddress);
  9372.  
  9373.     /**
  9374.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9375.      * <p/>
  9376.      * Pointer version of {@link #glVertex2d(double, double)}.
  9377.      *
  9378.      * @param coords the vertex buffer
  9379.      */
  9380.     public static void glVertex2d(ByteBuffer coords) {
  9381.         long __functionAddress = getInstance().glVertex2dv;
  9382.         if ( LWJGLUtil.CHECKS ) {
  9383.             checkFunctionAddress(__functionAddress);
  9384.             checkBuffer(coords, 2 << 3);
  9385.         }
  9386.         nglVertex2dv(memAddress(coords), __functionAddress);
  9387.     }
  9388.  
  9389.     /** Alternative version of: {@link #glVertex2d(ByteBuffer)} */
  9390.     public static void glVertex2(DoubleBuffer coords) {
  9391.         long __functionAddress = getInstance().glVertex2dv;
  9392.         if ( LWJGLUtil.CHECKS ) {
  9393.             checkFunctionAddress(__functionAddress);
  9394.             checkBuffer(coords, 2);
  9395.         }
  9396.         nglVertex2dv(memAddress(coords), __functionAddress);
  9397.     }
  9398.  
  9399.     // --- [ glVertex3f ] ---
  9400.  
  9401.     /** JNI method for {@link #glVertex3f(float, float, float)} */
  9402.     public static native void nglVertex3f(float x, float y, float z, long __functionAddress);
  9403.  
  9404.     /**
  9405.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9406.      * <p/>
  9407.      * Specifies a single vertex between {@link #glBegin(int)} and {@link #glEnd()} by giving its coordinates in three dimensions. The w coordinate is implicitly set
  9408.      * to one.
  9409.      *
  9410.      * @param x the vertex x coordinate
  9411.      * @param y the vertex y coordinate
  9412.      * @param z the vertex z coordinate
  9413.      */
  9414.     public static void glVertex3f(float x, float y, float z) {
  9415.         long __functionAddress = getInstance().glVertex3f;
  9416.         if ( LWJGLUtil.CHECKS )
  9417.             checkFunctionAddress(__functionAddress);
  9418.         nglVertex3f(x, y, z, __functionAddress);
  9419.     }
  9420.  
  9421.     // --- [ glVertex3s ] ---
  9422.  
  9423.     /** JNI method for {@link #glVertex3s(short, short, short)} */
  9424.     public static native void nglVertex3s(short x, short y, short z, long __functionAddress);
  9425.  
  9426.     /**
  9427.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9428.      * <p/>
  9429.      * Short version of {@link #glVertex3f(float, float, float)}.
  9430.      *
  9431.      * @param x the vertex x coordinate
  9432.      * @param y the vertex y coordinate
  9433.      * @param z the vertex z coordinate
  9434.      */
  9435.     public static void glVertex3s(short x, short y, short z) {
  9436.         long __functionAddress = getInstance().glVertex3s;
  9437.         if ( LWJGLUtil.CHECKS )
  9438.             checkFunctionAddress(__functionAddress);
  9439.         nglVertex3s(x, y, z, __functionAddress);
  9440.     }
  9441.  
  9442.     // --- [ glVertex3i ] ---
  9443.  
  9444.     /** JNI method for {@link #glVertex3i(int, int, int)} */
  9445.     public static native void nglVertex3i(int x, int y, int z, long __functionAddress);
  9446.  
  9447.     /**
  9448.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9449.      * <p/>
  9450.      * Integer version of {@link #glVertex3f(float, float, float)}.
  9451.      *
  9452.      * @param x the vertex x coordinate
  9453.      * @param y the vertex y coordinate
  9454.      * @param z the vertex z coordinate
  9455.      */
  9456.     public static void glVertex3i(int x, int y, int z) {
  9457.         long __functionAddress = getInstance().glVertex3i;
  9458.         if ( LWJGLUtil.CHECKS )
  9459.             checkFunctionAddress(__functionAddress);
  9460.         nglVertex3i(x, y, z, __functionAddress);
  9461.     }
  9462.  
  9463.     // --- [ glVertex3d ] ---
  9464.  
  9465.     /** JNI method for {@link #glVertex3d(double, double, double)} */
  9466.     public static native void nglVertex3d(double x, double y, double z, long __functionAddress);
  9467.  
  9468.     /**
  9469.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9470.      * <p/>
  9471.      * Double version of {@link #glVertex3f(float, float, float)}.
  9472.      *
  9473.      * @param x the vertex x coordinate
  9474.      * @param y the vertex y coordinate
  9475.      * @param z the vertex z coordinate
  9476.      */
  9477.     public static void glVertex3d(double x, double y, double z) {
  9478.         long __functionAddress = getInstance().glVertex3d;
  9479.         if ( LWJGLUtil.CHECKS )
  9480.             checkFunctionAddress(__functionAddress);
  9481.         nglVertex3d(x, y, z, __functionAddress);
  9482.     }
  9483.  
  9484.     // --- [ glVertex3fv ] ---
  9485.  
  9486.     /** JNI method for {@link #glVertex3f(ByteBuffer)} */
  9487.     public static native void nglVertex3fv(long coords, long __functionAddress);
  9488.  
  9489.     /**
  9490.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9491.      * <p/>
  9492.      * Pointer version of {@link #glVertex3f(float, float, float)}.
  9493.      *
  9494.      * @param coords the vertex buffer
  9495.      */
  9496.     public static void glVertex3f(ByteBuffer coords) {
  9497.         long __functionAddress = getInstance().glVertex3fv;
  9498.         if ( LWJGLUtil.CHECKS ) {
  9499.             checkFunctionAddress(__functionAddress);
  9500.             checkBuffer(coords, 3 << 2);
  9501.         }
  9502.         nglVertex3fv(memAddress(coords), __functionAddress);
  9503.     }
  9504.  
  9505.     /** Alternative version of: {@link #glVertex3f(ByteBuffer)} */
  9506.     public static void glVertex3(FloatBuffer coords) {
  9507.         long __functionAddress = getInstance().glVertex3fv;
  9508.         if ( LWJGLUtil.CHECKS ) {
  9509.             checkFunctionAddress(__functionAddress);
  9510.             checkBuffer(coords, 3);
  9511.         }
  9512.         nglVertex3fv(memAddress(coords), __functionAddress);
  9513.     }
  9514.  
  9515.     // --- [ glVertex3sv ] ---
  9516.  
  9517.     /** JNI method for {@link #glVertex3s(ByteBuffer)} */
  9518.     public static native void nglVertex3sv(long coords, long __functionAddress);
  9519.  
  9520.     /**
  9521.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9522.      * <p/>
  9523.      * Pointer version of {@link #glVertex3s(short, short, short)}.
  9524.      *
  9525.      * @param coords the vertex buffer
  9526.      */
  9527.     public static void glVertex3s(ByteBuffer coords) {
  9528.         long __functionAddress = getInstance().glVertex3sv;
  9529.         if ( LWJGLUtil.CHECKS ) {
  9530.             checkFunctionAddress(__functionAddress);
  9531.             checkBuffer(coords, 3 << 1);
  9532.         }
  9533.         nglVertex3sv(memAddress(coords), __functionAddress);
  9534.     }
  9535.  
  9536.     /** Alternative version of: {@link #glVertex3s(ByteBuffer)} */
  9537.     public static void glVertex3(ShortBuffer coords) {
  9538.         long __functionAddress = getInstance().glVertex3sv;
  9539.         if ( LWJGLUtil.CHECKS ) {
  9540.             checkFunctionAddress(__functionAddress);
  9541.             checkBuffer(coords, 3);
  9542.         }
  9543.         nglVertex3sv(memAddress(coords), __functionAddress);
  9544.     }
  9545.  
  9546.     // --- [ glVertex3iv ] ---
  9547.  
  9548.     /** JNI method for {@link #glVertex3i(ByteBuffer)} */
  9549.     public static native void nglVertex3iv(long coords, long __functionAddress);
  9550.  
  9551.     /**
  9552.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9553.      * <p/>
  9554.      * Pointer version of {@link #glVertex3i(int, int, int)}.
  9555.      *
  9556.      * @param coords the vertex buffer
  9557.      */
  9558.     public static void glVertex3i(ByteBuffer coords) {
  9559.         long __functionAddress = getInstance().glVertex3iv;
  9560.         if ( LWJGLUtil.CHECKS ) {
  9561.             checkFunctionAddress(__functionAddress);
  9562.             checkBuffer(coords, 3 << 2);
  9563.         }
  9564.         nglVertex3iv(memAddress(coords), __functionAddress);
  9565.     }
  9566.  
  9567.     /** Alternative version of: {@link #glVertex3i(ByteBuffer)} */
  9568.     public static void glVertex3(IntBuffer coords) {
  9569.         long __functionAddress = getInstance().glVertex3iv;
  9570.         if ( LWJGLUtil.CHECKS ) {
  9571.             checkFunctionAddress(__functionAddress);
  9572.             checkBuffer(coords, 3);
  9573.         }
  9574.         nglVertex3iv(memAddress(coords), __functionAddress);
  9575.     }
  9576.  
  9577.     // --- [ glVertex3dv ] ---
  9578.  
  9579.     /** JNI method for {@link #glVertex3d(ByteBuffer)} */
  9580.     public static native void nglVertex3dv(long coords, long __functionAddress);
  9581.  
  9582.     /**
  9583.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9584.      * <p/>
  9585.      * Pointer version of {@link #glVertex3d(double, double, double)}.
  9586.      *
  9587.      * @param coords the vertex buffer
  9588.      */
  9589.     public static void glVertex3d(ByteBuffer coords) {
  9590.         long __functionAddress = getInstance().glVertex3dv;
  9591.         if ( LWJGLUtil.CHECKS ) {
  9592.             checkFunctionAddress(__functionAddress);
  9593.             checkBuffer(coords, 3 << 3);
  9594.         }
  9595.         nglVertex3dv(memAddress(coords), __functionAddress);
  9596.     }
  9597.  
  9598.     /** Alternative version of: {@link #glVertex3d(ByteBuffer)} */
  9599.     public static void glVertex3(DoubleBuffer coords) {
  9600.         long __functionAddress = getInstance().glVertex3dv;
  9601.         if ( LWJGLUtil.CHECKS ) {
  9602.             checkFunctionAddress(__functionAddress);
  9603.             checkBuffer(coords, 3);
  9604.         }
  9605.         nglVertex3dv(memAddress(coords), __functionAddress);
  9606.     }
  9607.  
  9608.     // --- [ glVertex4f ] ---
  9609.  
  9610.     /** JNI method for {@link #glVertex4f(float, float, float, float)} */
  9611.     public static native void nglVertex4f(float x, float y, float z, float w, long __functionAddress);
  9612.  
  9613.     /**
  9614.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9615.      * <p/>
  9616.      * Specifies a single vertex between {@link #glBegin(int)} and {@link #glEnd()} by giving its coordinates in four dimensions.
  9617.      *
  9618.      * @param x the vertex x coordinate
  9619.      * @param y the vertex y coordinate
  9620.      * @param z the vertex z coordinate
  9621.      * @param w the vertex w coordinate
  9622.      */
  9623.     public static void glVertex4f(float x, float y, float z, float w) {
  9624.         long __functionAddress = getInstance().glVertex4f;
  9625.         if ( LWJGLUtil.CHECKS )
  9626.             checkFunctionAddress(__functionAddress);
  9627.         nglVertex4f(x, y, z, w, __functionAddress);
  9628.     }
  9629.  
  9630.     // --- [ glVertex4s ] ---
  9631.  
  9632.     /** JNI method for {@link #glVertex4s(short, short, short, short)} */
  9633.     public static native void nglVertex4s(short x, short y, short z, short w, long __functionAddress);
  9634.  
  9635.     /**
  9636.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9637.      * <p/>
  9638.      * Short version of {@link #glVertex4f(float, float, float, float)}.
  9639.      *
  9640.      * @param x the vertex x coordinate
  9641.      * @param y the vertex y coordinate
  9642.      * @param z the vertex z coordinate
  9643.      * @param w the vertex w coordinate
  9644.      */
  9645.     public static void glVertex4s(short x, short y, short z, short w) {
  9646.         long __functionAddress = getInstance().glVertex4s;
  9647.         if ( LWJGLUtil.CHECKS )
  9648.             checkFunctionAddress(__functionAddress);
  9649.         nglVertex4s(x, y, z, w, __functionAddress);
  9650.     }
  9651.  
  9652.     // --- [ glVertex4i ] ---
  9653.  
  9654.     /** JNI method for {@link #glVertex4i(int, int, int, int)} */
  9655.     public static native void nglVertex4i(int x, int y, int z, int w, long __functionAddress);
  9656.  
  9657.     /**
  9658.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9659.      * <p/>
  9660.      * Integer version of {@link #glVertex4f(float, float, float, float)}.
  9661.      *
  9662.      * @param x the vertex x coordinate
  9663.      * @param y the vertex y coordinate
  9664.      * @param z the vertex z coordinate
  9665.      * @param w the vertex w coordinate
  9666.      */
  9667.     public static void glVertex4i(int x, int y, int z, int w) {
  9668.         long __functionAddress = getInstance().glVertex4i;
  9669.         if ( LWJGLUtil.CHECKS )
  9670.             checkFunctionAddress(__functionAddress);
  9671.         nglVertex4i(x, y, z, w, __functionAddress);
  9672.     }
  9673.  
  9674.     // --- [ glVertex4d ] ---
  9675.  
  9676.     /** JNI method for {@link #glVertex4d(double, double, double, double)} */
  9677.     public static native void nglVertex4d(double x, double y, double z, double w, long __functionAddress);
  9678.  
  9679.     /**
  9680.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9681.      * <p/>
  9682.      * Double version of {@link #glVertex4f(float, float, float, float)}.
  9683.      *
  9684.      * @param x the vertex x coordinate
  9685.      * @param y the vertex y coordinate
  9686.      * @param z the vertex z coordinate
  9687.      * @param w the vertex w coordinate
  9688.      */
  9689.     public static void glVertex4d(double x, double y, double z, double w) {
  9690.         long __functionAddress = getInstance().glVertex4d;
  9691.         if ( LWJGLUtil.CHECKS )
  9692.             checkFunctionAddress(__functionAddress);
  9693.         nglVertex4d(x, y, z, w, __functionAddress);
  9694.     }
  9695.  
  9696.     // --- [ glVertex4fv ] ---
  9697.  
  9698.     /** JNI method for {@link #glVertex4f(ByteBuffer)} */
  9699.     public static native void nglVertex4fv(long coords, long __functionAddress);
  9700.  
  9701.     /**
  9702.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9703.      * <p/>
  9704.      * Pointer version of {@link #glVertex4f(float, float, float, float)}.
  9705.      *
  9706.      * @param coords the vertex buffer
  9707.      */
  9708.     public static void glVertex4f(ByteBuffer coords) {
  9709.         long __functionAddress = getInstance().glVertex4fv;
  9710.         if ( LWJGLUtil.CHECKS ) {
  9711.             checkFunctionAddress(__functionAddress);
  9712.             checkBuffer(coords, 4 << 2);
  9713.         }
  9714.         nglVertex4fv(memAddress(coords), __functionAddress);
  9715.     }
  9716.  
  9717.     /** Alternative version of: {@link #glVertex4f(ByteBuffer)} */
  9718.     public static void glVertex4(FloatBuffer coords) {
  9719.         long __functionAddress = getInstance().glVertex4fv;
  9720.         if ( LWJGLUtil.CHECKS ) {
  9721.             checkFunctionAddress(__functionAddress);
  9722.             checkBuffer(coords, 4);
  9723.         }
  9724.         nglVertex4fv(memAddress(coords), __functionAddress);
  9725.     }
  9726.  
  9727.     // --- [ glVertex4sv ] ---
  9728.  
  9729.     /** JNI method for {@link #glVertex4s(ByteBuffer)} */
  9730.     public static native void nglVertex4sv(long coords, long __functionAddress);
  9731.  
  9732.     /**
  9733.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9734.      * <p/>
  9735.      * Pointer version of {@link #glVertex4s(short, short, short, short)}.
  9736.      *
  9737.      * @param coords the vertex buffer
  9738.      */
  9739.     public static void glVertex4s(ByteBuffer coords) {
  9740.         long __functionAddress = getInstance().glVertex4sv;
  9741.         if ( LWJGLUtil.CHECKS ) {
  9742.             checkFunctionAddress(__functionAddress);
  9743.             checkBuffer(coords, 4 << 1);
  9744.         }
  9745.         nglVertex4sv(memAddress(coords), __functionAddress);
  9746.     }
  9747.  
  9748.     /** Alternative version of: {@link #glVertex4s(ByteBuffer)} */
  9749.     public static void glVertex4(ShortBuffer coords) {
  9750.         long __functionAddress = getInstance().glVertex4sv;
  9751.         if ( LWJGLUtil.CHECKS ) {
  9752.             checkFunctionAddress(__functionAddress);
  9753.             checkBuffer(coords, 4);
  9754.         }
  9755.         nglVertex4sv(memAddress(coords), __functionAddress);
  9756.     }
  9757.  
  9758.     // --- [ glVertex4iv ] ---
  9759.  
  9760.     /** JNI method for {@link #glVertex4i(ByteBuffer)} */
  9761.     public static native void nglVertex4iv(long coords, long __functionAddress);
  9762.  
  9763.     /**
  9764.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9765.      * <p/>
  9766.      * Pointer version of {@link #glVertex4i(int, int, int, int)}.
  9767.      *
  9768.      * @param coords the vertex buffer
  9769.      */
  9770.     public static void glVertex4i(ByteBuffer coords) {
  9771.         long __functionAddress = getInstance().glVertex4iv;
  9772.         if ( LWJGLUtil.CHECKS ) {
  9773.             checkFunctionAddress(__functionAddress);
  9774.             checkBuffer(coords, 4 << 2);
  9775.         }
  9776.         nglVertex4iv(memAddress(coords), __functionAddress);
  9777.     }
  9778.  
  9779.     /** Alternative version of: {@link #glVertex4i(ByteBuffer)} */
  9780.     public static void glVertex4(IntBuffer coords) {
  9781.         long __functionAddress = getInstance().glVertex4iv;
  9782.         if ( LWJGLUtil.CHECKS ) {
  9783.             checkFunctionAddress(__functionAddress);
  9784.             checkBuffer(coords, 4);
  9785.         }
  9786.         nglVertex4iv(memAddress(coords), __functionAddress);
  9787.     }
  9788.  
  9789.     // --- [ glVertex4dv ] ---
  9790.  
  9791.     /** JNI method for {@link #glVertex4d(ByteBuffer)} */
  9792.     public static native void nglVertex4dv(long coords, long __functionAddress);
  9793.  
  9794.     /**
  9795.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9796.      * <p/>
  9797.      * Pointer version of {@link #glVertex4d(double, double, double, double)}.
  9798.      *
  9799.      * @param coords the vertex buffer
  9800.      */
  9801.     public static void glVertex4d(ByteBuffer coords) {
  9802.         long __functionAddress = getInstance().glVertex4dv;
  9803.         if ( LWJGLUtil.CHECKS ) {
  9804.             checkFunctionAddress(__functionAddress);
  9805.             checkBuffer(coords, 4 << 3);
  9806.         }
  9807.         nglVertex4dv(memAddress(coords), __functionAddress);
  9808.     }
  9809.  
  9810.     /** Alternative version of: {@link #glVertex4d(ByteBuffer)} */
  9811.     public static void glVertex4(DoubleBuffer coords) {
  9812.         long __functionAddress = getInstance().glVertex4dv;
  9813.         if ( LWJGLUtil.CHECKS ) {
  9814.             checkFunctionAddress(__functionAddress);
  9815.             checkBuffer(coords, 4);
  9816.         }
  9817.         nglVertex4dv(memAddress(coords), __functionAddress);
  9818.     }
  9819.  
  9820.     // --- [ glVertexPointer ] ---
  9821.  
  9822.     /** JNI method for {@link #glVertexPointer(int, int, int, ByteBuffer)} */
  9823.     public static native void nglVertexPointer(int size, int type, int stride, long pointer, long __functionAddress);
  9824.  
  9825.     /**
  9826.      * <em>- This function is deprecated and unavailable in the Core profile -</em>
  9827.      * <p/>
  9828.      * Specifies the location and organization of a vertex array.
  9829.      *
  9830.      * @param size    the number of values per vertex that are stored in the array. One of:<p/>2, 3, 4
  9831.      * @param type    the data type of the values stored in the array. One of:<p/>{@link #GL_SHORT}, {@link #GL_INT}, {@link GL30#GL_HALF}, {@link #GL_FLOAT}, {@link #GL_DOUBLE}, {@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV}, {@link GL12#GL_INT_2_10_10_10_REV}
  9832.      * @param stride  the vertex stride in bytes. If specified as zero, then array elements are stored sequentially
  9833.      * @param pointer the vertex array data
  9834.      */
  9835.     public static void glVertexPointer(int size, int type, int stride, ByteBuffer pointer) {
  9836.         long __functionAddress = getInstance().glVertexPointer;
  9837.         if ( LWJGLUtil.CHECKS ) {
  9838.             checkFunctionAddress(__functionAddress);
  9839.             GLChecks.ensureBufferObject(0x8894, false);
  9840.         }
  9841.         nglVertexPointer(size, type, stride, memAddress(pointer), __functionAddress);
  9842.     }
  9843.  
  9844.     /** Buffer object offset version of: {@link #glVertexPointer(int, int, int, ByteBuffer)} */
  9845.     public static void glVertexPointer(int size, int type, int stride, long pointerOffset) {
  9846.         long __functionAddress = getInstance().glVertexPointer;
  9847.         if ( LWJGLUtil.CHECKS ) {
  9848.             checkFunctionAddress(__functionAddress);
  9849.             GLChecks.ensureBufferObject(0x8894, true);
  9850.         }
  9851.         nglVertexPointer(size, type, stride, pointerOffset, __functionAddress);
  9852.     }
  9853.  
  9854.     /** GL_SHORT version of: {@link #glVertexPointer(int, int, int, ByteBuffer)} */
  9855.     public static void glVertexPointer(int size, int stride, ShortBuffer pointer) {
  9856.         long __functionAddress = getInstance().glVertexPointer;
  9857.         if ( LWJGLUtil.CHECKS ) {
  9858.             checkFunctionAddress(__functionAddress);
  9859.             GLChecks.ensureBufferObject(0x8894, false);
  9860.         }
  9861.         nglVertexPointer(size, GL11.GL_SHORT, stride, memAddress(pointer), __functionAddress);
  9862.     }
  9863.  
  9864.     /** GL_INT version of: {@link #glVertexPointer(int, int, int, ByteBuffer)} */
  9865.     public static void glVertexPointer(int size, int stride, IntBuffer pointer) {
  9866.         long __functionAddress = getInstance().glVertexPointer;
  9867.         if ( LWJGLUtil.CHECKS ) {
  9868.             checkFunctionAddress(__functionAddress);
  9869.             GLChecks.ensureBufferObject(0x8894, false);
  9870.         }
  9871.         nglVertexPointer(size, GL11.GL_INT, stride, memAddress(pointer), __functionAddress);
  9872.     }
  9873.  
  9874.     /** GL_FLOAT version of: {@link #glVertexPointer(int, int, int, ByteBuffer)} */
  9875.     public static void glVertexPointer(int size, int stride, FloatBuffer pointer) {
  9876.         long __functionAddress = getInstance().glVertexPointer;
  9877.         if ( LWJGLUtil.CHECKS ) {
  9878.             checkFunctionAddress(__functionAddress);
  9879.             GLChecks.ensureBufferObject(0x8894, false);
  9880.         }
  9881.         nglVertexPointer(size, GL11.GL_FLOAT, stride, memAddress(pointer), __functionAddress);
  9882.     }
  9883.  
  9884.     /** GL_DOUBLE version of: {@link #glVertexPointer(int, int, int, ByteBuffer)} */
  9885.     public static void glVertexPointer(int size, int stride, DoubleBuffer pointer) {
  9886.         long __functionAddress = getInstance().glVertexPointer;
  9887.         if ( LWJGLUtil.CHECKS ) {
  9888.             checkFunctionAddress(__functionAddress);
  9889.             GLChecks.ensureBufferObject(0x8894, false);
  9890.         }
  9891.         nglVertexPointer(size, GL11.GL_DOUBLE, stride, memAddress(pointer), __functionAddress);
  9892.     }
  9893.  
  9894.     // --- [ glViewport ] ---
  9895.  
  9896.     /** JNI method for {@link #glViewport(int, int, int, int)} */
  9897.     public static native void nglViewport(int x, int y, int w, int h, long __functionAddress);
  9898.  
  9899.     /**
  9900.      * <a href="http://www.opengl.org/sdk/docs/man/xhtml/glViewport.xml">OpenGL SDK Reference</a>
  9901.      * <p/>
  9902.      * Specifies the viewport transformation parameters for all viewports.
  9903.      * <p/>
  9904.      * The location of the viewport's bottom-left corner, given by {@code (x, y)}, are clamped to be within the implementation-dependent viewport bounds range.
  9905.      * The viewport bounds range {@code [min, max]} tuple may be determined by calling {@link #glGetFloat(int, FloatBuffer)} with the symbolic constant
  9906.      * {@link GL41#GL_VIEWPORT_BOUNDS_RANGE}. Viewport width and height are clamped to implementation-dependent maximums when specified. The maximum width and
  9907.      * height may be found by calling {@link #glGetFloat(int, FloatBuffer)} with the symbolic constant {@link #GL_MAX_VIEWPORT_DIMS}. The maximum viewport
  9908.      * dimensions must be greater than or equal to the larger of the visible dimensions of the display being rendered to (if a display exists), and the largest
  9909.      * renderbuffer image which can be successfully created and attached to a framebuffer object.
  9910.      * <p/>
  9911.      * In the initial state, {@code w} and {@code h} for each viewport are set to the width and height, respectively, of the window into which the GL is to do
  9912.      * its rendering. If the default framebuffer is bound but no default framebuffer is associated with the GL context, then {@code w} and {@code h} are
  9913.      * initially set to zero.
  9914.      *
  9915.      * @param x the left viewport coordinate
  9916.      * @param y the bottom viewport coordinate
  9917.      * @param w the viewport width
  9918.      * @param h the viewport height
  9919.      */
  9920.     public static void glViewport(int x, int y, int w, int h) {
  9921.         long __functionAddress = getInstance().glViewport;
  9922.         if ( LWJGLUtil.CHECKS )
  9923.             checkFunctionAddress(__functionAddress);
  9924.         nglViewport(x, y, w, h, __functionAddress);
  9925.     }
  9926.  
  9927.     // --- [ Function Addresses ] ---
  9928.  
  9929.     /** Returns the {@link Functions} instance for the current context. */
  9930.     public static Functions getInstance() {
  9931.         return GLContext.getCapabilities().__GL11;
  9932.     }
  9933.  
  9934.     static Functions create(java.util.Set<String> ext, FunctionProvider provider, boolean fc) {
  9935.         if ( !ext.contains("OpenGL11") ) return null;
  9936.  
  9937.         Functions funcs = new Functions(provider);
  9938.  
  9939.         boolean supported =
  9940.             funcs.glEnable != 0L &&
  9941.             funcs.glDisable != 0L &&
  9942.             (fc || funcs.glAccum != 0L) &&
  9943.             (fc || funcs.glAlphaFunc != 0L) &&
  9944.             (fc || funcs.glAreTexturesResident != 0L) &&
  9945.             funcs.glArrayElement != 0L &&
  9946.             (fc || funcs.glBegin != 0L) &&
  9947.             funcs.glBindTexture != 0L &&
  9948.             (fc || funcs.glBitmap != 0L) &&
  9949.             funcs.glBlendFunc != 0L &&
  9950.             (fc || funcs.glCallList != 0L) &&
  9951.             (fc || funcs.glCallLists != 0L) &&
  9952.             funcs.glClear != 0L &&
  9953.             (fc || funcs.glClearAccum != 0L) &&
  9954.             funcs.glClearColor != 0L &&
  9955.             funcs.glClearDepth != 0L &&
  9956.             funcs.glClearStencil != 0L &&
  9957.             funcs.glClipPlane != 0L &&
  9958.             (fc || funcs.glColor3b != 0L) &&
  9959.             (fc || funcs.glColor3s != 0L) &&
  9960.             (fc || funcs.glColor3i != 0L) &&
  9961.             (fc || funcs.glColor3f != 0L) &&
  9962.             (fc || funcs.glColor3d != 0L) &&
  9963.             (fc || funcs.glColor3ub != 0L) &&
  9964.             (fc || funcs.glColor3us != 0L) &&
  9965.             (fc || funcs.glColor3ui != 0L) &&
  9966.             (fc || funcs.glColor3bv != 0L) &&
  9967.             (fc || funcs.glColor3sv != 0L) &&
  9968.             (fc || funcs.glColor3iv != 0L) &&
  9969.             (fc || funcs.glColor3fv != 0L) &&
  9970.             (fc || funcs.glColor3dv != 0L) &&
  9971.             (fc || funcs.glColor3ubv != 0L) &&
  9972.             (fc || funcs.glColor3usv != 0L) &&
  9973.             (fc || funcs.glColor3uiv != 0L) &&
  9974.             (fc || funcs.glColor4b != 0L) &&
  9975.             (fc || funcs.glColor4s != 0L) &&
  9976.             (fc || funcs.glColor4i != 0L) &&
  9977.             (fc || funcs.glColor4f != 0L) &&
  9978.             (fc || funcs.glColor4d != 0L) &&
  9979.             (fc || funcs.glColor4ub != 0L) &&
  9980.             (fc || funcs.glColor4us != 0L) &&
  9981.             (fc || funcs.glColor4ui != 0L) &&
  9982.             (fc || funcs.glColor4bv != 0L) &&
  9983.             (fc || funcs.glColor4sv != 0L) &&
  9984.             (fc || funcs.glColor4iv != 0L) &&
  9985.             (fc || funcs.glColor4fv != 0L) &&
  9986.             (fc || funcs.glColor4dv != 0L) &&
  9987.             (fc || funcs.glColor4ubv != 0L) &&
  9988.             (fc || funcs.glColor4usv != 0L) &&
  9989.             (fc || funcs.glColor4uiv != 0L) &&
  9990.             funcs.glColorMask != 0L &&
  9991.             (fc || funcs.glColorMaterial != 0L) &&
  9992.             (fc || funcs.glColorPointer != 0L) &&
  9993.             funcs.glCopyPixels != 0L &&
  9994.             funcs.glCullFace != 0L &&
  9995.             (fc || funcs.glDeleteLists != 0L) &&
  9996.             funcs.glDepthFunc != 0L &&
  9997.             funcs.glDepthMask != 0L &&
  9998.             funcs.glDepthRange != 0L &&
  9999.             (fc || funcs.glDisableClientState != 0L) &&
  10000.             funcs.glDrawArrays != 0L &&
  10001.             funcs.glDrawBuffer != 0L &&
  10002.             funcs.glDrawElements != 0L &&
  10003.             (fc || funcs.glDrawPixels != 0L) &&
  10004.             (fc || funcs.glEdgeFlag != 0L) &&
  10005.             (fc || funcs.glEdgeFlagv != 0L) &&
  10006.             (fc || funcs.glEdgeFlagPointer != 0L) &&
  10007.             (fc || funcs.glEnableClientState != 0L) &&
  10008.             (fc || funcs.glEnd != 0L) &&
  10009.             (fc || funcs.glEvalCoord1f != 0L) &&
  10010.             (fc || funcs.glEvalCoord1fv != 0L) &&
  10011.             (fc || funcs.glEvalCoord1d != 0L) &&
  10012.             (fc || funcs.glEvalCoord1dv != 0L) &&
  10013.             (fc || funcs.glEvalCoord2f != 0L) &&
  10014.             (fc || funcs.glEvalCoord2fv != 0L) &&
  10015.             (fc || funcs.glEvalCoord2d != 0L) &&
  10016.             (fc || funcs.glEvalCoord2dv != 0L) &&
  10017.             (fc || funcs.glEvalMesh1 != 0L) &&
  10018.             (fc || funcs.glEvalMesh2 != 0L) &&
  10019.             (fc || funcs.glEvalPoint1 != 0L) &&
  10020.             (fc || funcs.glEvalPoint2 != 0L) &&
  10021.             (fc || funcs.glFeedbackBuffer != 0L) &&
  10022.             funcs.glFinish != 0L &&
  10023.             funcs.glFlush != 0L &&
  10024.             (fc || funcs.glFogi != 0L) &&
  10025.             (fc || funcs.glFogiv != 0L) &&
  10026.             (fc || funcs.glFogf != 0L) &&
  10027.             (fc || funcs.glFogfv != 0L) &&
  10028.             funcs.glFrontFace != 0L &&
  10029.             (fc || funcs.glGenLists != 0L) &&
  10030.             funcs.glGenTextures != 0L &&
  10031.             funcs.glDeleteTextures != 0L &&
  10032.             funcs.glGetClipPlane != 0L &&
  10033.             funcs.glGetBooleanv != 0L &&
  10034.             funcs.glGetFloatv != 0L &&
  10035.             funcs.glGetIntegerv != 0L &&
  10036.             funcs.glGetDoublev != 0L &&
  10037.             funcs.glGetError != 0L &&
  10038.             (fc || funcs.glGetLightiv != 0L) &&
  10039.             (fc || funcs.glGetLightfv != 0L) &&
  10040.             (fc || funcs.glGetMapiv != 0L) &&
  10041.             (fc || funcs.glGetMapfv != 0L) &&
  10042.             (fc || funcs.glGetMapdv != 0L) &&
  10043.             (fc || funcs.glGetMaterialiv != 0L) &&
  10044.             (fc || funcs.glGetMaterialfv != 0L) &&
  10045.             (fc || funcs.glGetPixelMapfv != 0L) &&
  10046.             (fc || funcs.glGetPixelMapusv != 0L) &&
  10047.             (fc || funcs.glGetPixelMapuiv != 0L) &&
  10048.             funcs.glGetPointerv != 0L &&
  10049.             (fc || funcs.glGetPolygonStipple != 0L) &&
  10050.             funcs.glGetString != 0L &&
  10051.             funcs.glGetTexEnviv != 0L &&
  10052.             funcs.glGetTexEnvfv != 0L &&
  10053.             (fc || funcs.glGetTexGeniv != 0L) &&
  10054.             (fc || funcs.glGetTexGenfv != 0L) &&
  10055.             (fc || funcs.glGetTexGendv != 0L) &&
  10056.             funcs.glGetTexImage != 0L &&
  10057.             funcs.glGetTexLevelParameteriv != 0L &&
  10058.             funcs.glGetTexLevelParameterfv != 0L &&
  10059.             funcs.glGetTexParameteriv != 0L &&
  10060.             funcs.glGetTexParameterfv != 0L &&
  10061.             funcs.glHint != 0L &&
  10062.             (fc || funcs.glInitNames != 0L) &&
  10063.             funcs.glInterleavedArrays != 0L &&
  10064.             funcs.glIsEnabled != 0L &&
  10065.             (fc || funcs.glIsList != 0L) &&
  10066.             funcs.glIsTexture != 0L &&
  10067.             (fc || funcs.glLightModeli != 0L) &&
  10068.             (fc || funcs.glLightModelf != 0L) &&
  10069.             (fc || funcs.glLightModeliv != 0L) &&
  10070.             (fc || funcs.glLightModelfv != 0L) &&
  10071.             (fc || funcs.glLighti != 0L) &&
  10072.             (fc || funcs.glLightf != 0L) &&
  10073.             (fc || funcs.glLightiv != 0L) &&
  10074.             (fc || funcs.glLightfv != 0L) &&
  10075.             (fc || funcs.glLineStipple != 0L) &&
  10076.             funcs.glLineWidth != 0L &&
  10077.             (fc || funcs.glListBase != 0L) &&
  10078.             (fc || funcs.glLoadMatrixf != 0L) &&
  10079.             (fc || funcs.glLoadMatrixd != 0L) &&
  10080.             (fc || funcs.glLoadIdentity != 0L) &&
  10081.             (fc || funcs.glLoadName != 0L) &&
  10082.             funcs.glLogicOp != 0L &&
  10083.             (fc || funcs.glMap1f != 0L) &&
  10084.             (fc || funcs.glMap1d != 0L) &&
  10085.             (fc || funcs.glMap2f != 0L) &&
  10086.             (fc || funcs.glMap2d != 0L) &&
  10087.             (fc || funcs.glMapGrid1f != 0L) &&
  10088.             (fc || funcs.glMapGrid1d != 0L) &&
  10089.             (fc || funcs.glMapGrid2f != 0L) &&
  10090.             (fc || funcs.glMapGrid2d != 0L) &&
  10091.             (fc || funcs.glMateriali != 0L) &&
  10092.             (fc || funcs.glMaterialf != 0L) &&
  10093.             (fc || funcs.glMaterialiv != 0L) &&
  10094.             (fc || funcs.glMaterialfv != 0L) &&
  10095.             (fc || funcs.glMatrixMode != 0L) &&
  10096.             (fc || funcs.glMultMatrixf != 0L) &&
  10097.             (fc || funcs.glMultMatrixd != 0L) &&
  10098.             (fc || funcs.glFrustum != 0L) &&
  10099.             (fc || funcs.glNewList != 0L) &&
  10100.             (fc || funcs.glEndList != 0L) &&
  10101.             (fc || funcs.glNormal3f != 0L) &&
  10102.             (fc || funcs.glNormal3b != 0L) &&
  10103.             (fc || funcs.glNormal3s != 0L) &&
  10104.             (fc || funcs.glNormal3i != 0L) &&
  10105.             (fc || funcs.glNormal3d != 0L) &&
  10106.             (fc || funcs.glNormal3fv != 0L) &&
  10107.             (fc || funcs.glNormal3bv != 0L) &&
  10108.             (fc || funcs.glNormal3sv != 0L) &&
  10109.             (fc || funcs.glNormal3iv != 0L) &&
  10110.             (fc || funcs.glNormal3dv != 0L) &&
  10111.             (fc || funcs.glNormalPointer != 0L) &&
  10112.             (fc || funcs.glOrtho != 0L) &&
  10113.             (fc || funcs.glPassThrough != 0L) &&
  10114.             (fc || funcs.glPixelMapfv != 0L) &&
  10115.             (fc || funcs.glPixelMapusv != 0L) &&
  10116.             (fc || funcs.glPixelMapuiv != 0L) &&
  10117.             funcs.glPixelStorei != 0L &&
  10118.             funcs.glPixelStoref != 0L &&
  10119.             (fc || funcs.glPixelTransferi != 0L) &&
  10120.             (fc || funcs.glPixelTransferf != 0L) &&
  10121.             (fc || funcs.glPixelZoom != 0L) &&
  10122.             funcs.glPointSize != 0L &&
  10123.             funcs.glPolygonMode != 0L &&
  10124.             funcs.glPolygonOffset != 0L &&
  10125.             (fc || funcs.glPolygonStipple != 0L) &&
  10126.             (fc || funcs.glPushAttrib != 0L) &&
  10127.             (fc || funcs.glPushClientAttrib != 0L) &&
  10128.             (fc || funcs.glPopAttrib != 0L) &&
  10129.             (fc || funcs.glPopClientAttrib != 0L) &&
  10130.             (fc || funcs.glPopMatrix != 0L) &&
  10131.             (fc || funcs.glPopName != 0L) &&
  10132.             (fc || funcs.glPrioritizeTextures != 0L) &&
  10133.             (fc || funcs.glPushMatrix != 0L) &&
  10134.             (fc || funcs.glPushName != 0L) &&
  10135.             (fc || funcs.glRasterPos2i != 0L) &&
  10136.             (fc || funcs.glRasterPos2s != 0L) &&
  10137.             (fc || funcs.glRasterPos2f != 0L) &&
  10138.             (fc || funcs.glRasterPos2d != 0L) &&
  10139.             (fc || funcs.glRasterPos2iv != 0L) &&
  10140.             (fc || funcs.glRasterPos2sv != 0L) &&
  10141.             (fc || funcs.glRasterPos2fv != 0L) &&
  10142.             (fc || funcs.glRasterPos2dv != 0L) &&
  10143.             (fc || funcs.glRasterPos3i != 0L) &&
  10144.             (fc || funcs.glRasterPos3s != 0L) &&
  10145.             (fc || funcs.glRasterPos3f != 0L) &&
  10146.             (fc || funcs.glRasterPos3d != 0L) &&
  10147.             (fc || funcs.glRasterPos3iv != 0L) &&
  10148.             (fc || funcs.glRasterPos3sv != 0L) &&
  10149.             (fc || funcs.glRasterPos3fv != 0L) &&
  10150.             (fc || funcs.glRasterPos3dv != 0L) &&
  10151.             (fc || funcs.glRasterPos4i != 0L) &&
  10152.             (fc || funcs.glRasterPos4s != 0L) &&
  10153.             (fc || funcs.glRasterPos4f != 0L) &&
  10154.             (fc || funcs.glRasterPos4d != 0L) &&
  10155.             (fc || funcs.glRasterPos4iv != 0L) &&
  10156.             (fc || funcs.glRasterPos4sv != 0L) &&
  10157.             (fc || funcs.glRasterPos4fv != 0L) &&
  10158.             (fc || funcs.glRasterPos4dv != 0L) &&
  10159.             funcs.glReadBuffer != 0L &&
  10160.             funcs.glReadPixels != 0L &&
  10161.             (fc || funcs.glRecti != 0L) &&
  10162.             (fc || funcs.glRects != 0L) &&
  10163.             (fc || funcs.glRectf != 0L) &&
  10164.             (fc || funcs.glRectd != 0L) &&
  10165.             (fc || funcs.glRectiv != 0L) &&
  10166.             (fc || funcs.glRectsv != 0L) &&
  10167.             (fc || funcs.glRectfv != 0L) &&
  10168.             (fc || funcs.glRectdv != 0L) &&
  10169.             (fc || funcs.glRenderMode != 0L) &&
  10170.             (fc || funcs.glRotatef != 0L) &&
  10171.             (fc || funcs.glRotated != 0L) &&
  10172.             (fc || funcs.glScalef != 0L) &&
  10173.             (fc || funcs.glScaled != 0L) &&
  10174.             funcs.glScissor != 0L &&
  10175.             (fc || funcs.glSelectBuffer != 0L) &&
  10176.             (fc || funcs.glShadeModel != 0L) &&
  10177.             funcs.glStencilFunc != 0L &&
  10178.             funcs.glStencilMask != 0L &&
  10179.             funcs.glStencilOp != 0L &&
  10180.             (fc || funcs.glTexCoord1f != 0L) &&
  10181.             (fc || funcs.glTexCoord1s != 0L) &&
  10182.             (fc || funcs.glTexCoord1i != 0L) &&
  10183.             (fc || funcs.glTexCoord1d != 0L) &&
  10184.             (fc || funcs.glTexCoord1fv != 0L) &&
  10185.             (fc || funcs.glTexCoord1sv != 0L) &&
  10186.             (fc || funcs.glTexCoord1iv != 0L) &&
  10187.             (fc || funcs.glTexCoord1dv != 0L) &&
  10188.             (fc || funcs.glTexCoord2f != 0L) &&
  10189.             (fc || funcs.glTexCoord2s != 0L) &&
  10190.             (fc || funcs.glTexCoord2i != 0L) &&
  10191.             (fc || funcs.glTexCoord2d != 0L) &&
  10192.             (fc || funcs.glTexCoord2fv != 0L) &&
  10193.             (fc || funcs.glTexCoord2sv != 0L) &&
  10194.             (fc || funcs.glTexCoord2iv != 0L) &&
  10195.             (fc || funcs.glTexCoord2dv != 0L) &&
  10196.             (fc || funcs.glTexCoord3f != 0L) &&
  10197.             (fc || funcs.glTexCoord3s != 0L) &&
  10198.             (fc || funcs.glTexCoord3i != 0L) &&
  10199.             (fc || funcs.glTexCoord3d != 0L) &&
  10200.             (fc || funcs.glTexCoord3fv != 0L) &&
  10201.             (fc || funcs.glTexCoord3sv != 0L) &&
  10202.             (fc || funcs.glTexCoord3iv != 0L) &&
  10203.             (fc || funcs.glTexCoord3dv != 0L) &&
  10204.             (fc || funcs.glTexCoord4f != 0L) &&
  10205.             (fc || funcs.glTexCoord4s != 0L) &&
  10206.             (fc || funcs.glTexCoord4i != 0L) &&
  10207.             (fc || funcs.glTexCoord4d != 0L) &&
  10208.             (fc || funcs.glTexCoord4fv != 0L) &&
  10209.             (fc || funcs.glTexCoord4sv != 0L) &&
  10210.             (fc || funcs.glTexCoord4iv != 0L) &&
  10211.             (fc || funcs.glTexCoord4dv != 0L) &&
  10212.             (fc || funcs.glTexCoordPointer != 0L) &&
  10213.             funcs.glTexEnvi != 0L &&
  10214.             funcs.glTexEnviv != 0L &&
  10215.             funcs.glTexEnvf != 0L &&
  10216.             funcs.glTexEnvfv != 0L &&
  10217.             (fc || funcs.glTexGeni != 0L) &&
  10218.             (fc || funcs.glTexGeniv != 0L) &&
  10219.             (fc || funcs.glTexGenf != 0L) &&
  10220.             (fc || funcs.glTexGenfv != 0L) &&
  10221.             (fc || funcs.glTexGend != 0L) &&
  10222.             (fc || funcs.glTexGendv != 0L) &&
  10223.             funcs.glTexImage2D != 0L &&
  10224.             funcs.glTexImage1D != 0L &&
  10225.             funcs.glCopyTexImage2D != 0L &&
  10226.             funcs.glCopyTexImage1D != 0L &&
  10227.             funcs.glCopyTexSubImage1D != 0L &&
  10228.             funcs.glCopyTexSubImage2D != 0L &&
  10229.             funcs.glTexParameteri != 0L &&
  10230.             funcs.glTexParameteriv != 0L &&
  10231.             funcs.glTexParameterf != 0L &&
  10232.             funcs.glTexParameterfv != 0L &&
  10233.             funcs.glTexSubImage1D != 0L &&
  10234.             funcs.glTexSubImage2D != 0L &&
  10235.             (fc || funcs.glTranslatef != 0L) &&
  10236.             (fc || funcs.glTranslated != 0L) &&
  10237.             (fc || funcs.glVertex2f != 0L) &&
  10238.             (fc || funcs.glVertex2s != 0L) &&
  10239.             (fc || funcs.glVertex2i != 0L) &&
  10240.             (fc || funcs.glVertex2d != 0L) &&
  10241.             (fc || funcs.glVertex2fv != 0L) &&
  10242.             (fc || funcs.glVertex2sv != 0L) &&
  10243.             (fc || funcs.glVertex2iv != 0L) &&
  10244.             (fc || funcs.glVertex2dv != 0L) &&
  10245.             (fc || funcs.glVertex3f != 0L) &&
  10246.             (fc || funcs.glVertex3s != 0L) &&
  10247.             (fc || funcs.glVertex3i != 0L) &&
  10248.             (fc || funcs.glVertex3d != 0L) &&
  10249.             (fc || funcs.glVertex3fv != 0L) &&
  10250.             (fc || funcs.glVertex3sv != 0L) &&
  10251.             (fc || funcs.glVertex3iv != 0L) &&
  10252.             (fc || funcs.glVertex3dv != 0L) &&
  10253.             (fc || funcs.glVertex4f != 0L) &&
  10254.             (fc || funcs.glVertex4s != 0L) &&
  10255.             (fc || funcs.glVertex4i != 0L) &&
  10256.             (fc || funcs.glVertex4d != 0L) &&
  10257.             (fc || funcs.glVertex4fv != 0L) &&
  10258.             (fc || funcs.glVertex4sv != 0L) &&
  10259.             (fc || funcs.glVertex4iv != 0L) &&
  10260.             (fc || funcs.glVertex4dv != 0L) &&
  10261.             (fc || funcs.glVertexPointer != 0L) &&
  10262.             funcs.glViewport != 0L;
  10263.  
  10264.         return GLContext.checkExtension("OpenGL11", funcs, supported);
  10265.     }
  10266.     /** The {@link FunctionMap} class for {@code GL11}. */
  10267.     public static final class Functions implements FunctionMap {
  10268.  
  10269.         public final long
  10270.             glEnable,
  10271.             glDisable,
  10272.             glAccum,
  10273.             glAlphaFunc,
  10274.             glAreTexturesResident,
  10275.             glArrayElement,
  10276.             glBegin,
  10277.             glBindTexture,
  10278.             glBitmap,
  10279.             glBlendFunc,
  10280.             glCallList,
  10281.             glCallLists,
  10282.             glClear,
  10283.             glClearAccum,
  10284.             glClearColor,
  10285.             glClearDepth,
  10286.             glClearStencil,
  10287.             glClipPlane,
  10288.             glColor3b,
  10289.             glColor3s,
  10290.             glColor3i,
  10291.             glColor3f,
  10292.             glColor3d,
  10293.             glColor3ub,
  10294.             glColor3us,
  10295.             glColor3ui,
  10296.             glColor3bv,
  10297.             glColor3sv,
  10298.             glColor3iv,
  10299.             glColor3fv,
  10300.             glColor3dv,
  10301.             glColor3ubv,
  10302.             glColor3usv,
  10303.             glColor3uiv,
  10304.             glColor4b,
  10305.             glColor4s,
  10306.             glColor4i,
  10307.             glColor4f,
  10308.             glColor4d,
  10309.             glColor4ub,
  10310.             glColor4us,
  10311.             glColor4ui,
  10312.             glColor4bv,
  10313.             glColor4sv,
  10314.             glColor4iv,
  10315.             glColor4fv,
  10316.             glColor4dv,
  10317.             glColor4ubv,
  10318.             glColor4usv,
  10319.             glColor4uiv,
  10320.             glColorMask,
  10321.             glColorMaterial,
  10322.             glColorPointer,
  10323.             glCopyPixels,
  10324.             glCullFace,
  10325.             glDeleteLists,
  10326.             glDepthFunc,
  10327.             glDepthMask,
  10328.             glDepthRange,
  10329.             glDisableClientState,
  10330.             glDrawArrays,
  10331.             glDrawBuffer,
  10332.             glDrawElements,
  10333.             glDrawPixels,
  10334.             glEdgeFlag,
  10335.             glEdgeFlagv,
  10336.             glEdgeFlagPointer,
  10337.             glEnableClientState,
  10338.             glEnd,
  10339.             glEvalCoord1f,
  10340.             glEvalCoord1fv,
  10341.             glEvalCoord1d,
  10342.             glEvalCoord1dv,
  10343.             glEvalCoord2f,
  10344.             glEvalCoord2fv,
  10345.             glEvalCoord2d,
  10346.             glEvalCoord2dv,
  10347.             glEvalMesh1,
  10348.             glEvalMesh2,
  10349.             glEvalPoint1,
  10350.             glEvalPoint2,
  10351.             glFeedbackBuffer,
  10352.             glFinish,
  10353.             glFlush,
  10354.             glFogi,
  10355.             glFogiv,
  10356.             glFogf,
  10357.             glFogfv,
  10358.             glFrontFace,
  10359.             glGenLists,
  10360.             glGenTextures,
  10361.             glDeleteTextures,
  10362.             glGetClipPlane,
  10363.             glGetBooleanv,
  10364.             glGetFloatv,
  10365.             glGetIntegerv,
  10366.             glGetDoublev,
  10367.             glGetError,
  10368.             glGetLightiv,
  10369.             glGetLightfv,
  10370.             glGetMapiv,
  10371.             glGetMapfv,
  10372.             glGetMapdv,
  10373.             glGetMaterialiv,
  10374.             glGetMaterialfv,
  10375.             glGetPixelMapfv,
  10376.             glGetPixelMapusv,
  10377.             glGetPixelMapuiv,
  10378.             glGetPointerv,
  10379.             glGetPolygonStipple,
  10380.             glGetString,
  10381.             glGetTexEnviv,
  10382.             glGetTexEnvfv,
  10383.             glGetTexGeniv,
  10384.             glGetTexGenfv,
  10385.             glGetTexGendv,
  10386.             glGetTexImage,
  10387.             glGetTexLevelParameteriv,
  10388.             glGetTexLevelParameterfv,
  10389.             glGetTexParameteriv,
  10390.             glGetTexParameterfv,
  10391.             glHint,
  10392.             glInitNames,
  10393.             glInterleavedArrays,
  10394.             glIsEnabled,
  10395.             glIsList,
  10396.             glIsTexture,
  10397.             glLightModeli,
  10398.             glLightModelf,
  10399.             glLightModeliv,
  10400.             glLightModelfv,
  10401.             glLighti,
  10402.             glLightf,
  10403.             glLightiv,
  10404.             glLightfv,
  10405.             glLineStipple,
  10406.             glLineWidth,
  10407.             glListBase,
  10408.             glLoadMatrixf,
  10409.             glLoadMatrixd,
  10410.             glLoadIdentity,
  10411.             glLoadName,
  10412.             glLogicOp,
  10413.             glMap1f,
  10414.             glMap1d,
  10415.             glMap2f,
  10416.             glMap2d,
  10417.             glMapGrid1f,
  10418.             glMapGrid1d,
  10419.             glMapGrid2f,
  10420.             glMapGrid2d,
  10421.             glMateriali,
  10422.             glMaterialf,
  10423.             glMaterialiv,
  10424.             glMaterialfv,
  10425.             glMatrixMode,
  10426.             glMultMatrixf,
  10427.             glMultMatrixd,
  10428.             glFrustum,
  10429.             glNewList,
  10430.             glEndList,
  10431.             glNormal3f,
  10432.             glNormal3b,
  10433.             glNormal3s,
  10434.             glNormal3i,
  10435.             glNormal3d,
  10436.             glNormal3fv,
  10437.             glNormal3bv,
  10438.             glNormal3sv,
  10439.             glNormal3iv,
  10440.             glNormal3dv,
  10441.             glNormalPointer,
  10442.             glOrtho,
  10443.             glPassThrough,
  10444.             glPixelMapfv,
  10445.             glPixelMapusv,
  10446.             glPixelMapuiv,
  10447.             glPixelStorei,
  10448.             glPixelStoref,
  10449.             glPixelTransferi,
  10450.             glPixelTransferf,
  10451.             glPixelZoom,
  10452.             glPointSize,
  10453.             glPolygonMode,
  10454.             glPolygonOffset,
  10455.             glPolygonStipple,
  10456.             glPushAttrib,
  10457.             glPushClientAttrib,
  10458.             glPopAttrib,
  10459.             glPopClientAttrib,
  10460.             glPopMatrix,
  10461.             glPopName,
  10462.             glPrioritizeTextures,
  10463.             glPushMatrix,
  10464.             glPushName,
  10465.             glRasterPos2i,
  10466.             glRasterPos2s,
  10467.             glRasterPos2f,
  10468.             glRasterPos2d,
  10469.             glRasterPos2iv,
  10470.             glRasterPos2sv,
  10471.             glRasterPos2fv,
  10472.             glRasterPos2dv,
  10473.             glRasterPos3i,
  10474.             glRasterPos3s,
  10475.             glRasterPos3f,
  10476.             glRasterPos3d,
  10477.             glRasterPos3iv,
  10478.             glRasterPos3sv,
  10479.             glRasterPos3fv,
  10480.             glRasterPos3dv,
  10481.             glRasterPos4i,
  10482.             glRasterPos4s,
  10483.             glRasterPos4f,
  10484.             glRasterPos4d,
  10485.             glRasterPos4iv,
  10486.             glRasterPos4sv,
  10487.             glRasterPos4fv,
  10488.             glRasterPos4dv,
  10489.             glReadBuffer,
  10490.             glReadPixels,
  10491.             glRecti,
  10492.             glRects,
  10493.             glRectf,
  10494.             glRectd,
  10495.             glRectiv,
  10496.             glRectsv,
  10497.             glRectfv,
  10498.             glRectdv,
  10499.             glRenderMode,
  10500.             glRotatef,
  10501.             glRotated,
  10502.             glScalef,
  10503.             glScaled,
  10504.             glScissor,
  10505.             glSelectBuffer,
  10506.             glShadeModel,
  10507.             glStencilFunc,
  10508.             glStencilMask,
  10509.             glStencilOp,
  10510.             glTexCoord1f,
  10511.             glTexCoord1s,
  10512.             glTexCoord1i,
  10513.             glTexCoord1d,
  10514.             glTexCoord1fv,
  10515.             glTexCoord1sv,
  10516.             glTexCoord1iv,
  10517.             glTexCoord1dv,
  10518.             glTexCoord2f,
  10519.             glTexCoord2s,
  10520.             glTexCoord2i,
  10521.             glTexCoord2d,
  10522.             glTexCoord2fv,
  10523.             glTexCoord2sv,
  10524.             glTexCoord2iv,
  10525.             glTexCoord2dv,
  10526.             glTexCoord3f,
  10527.             glTexCoord3s,
  10528.             glTexCoord3i,
  10529.             glTexCoord3d,
  10530.             glTexCoord3fv,
  10531.             glTexCoord3sv,
  10532.             glTexCoord3iv,
  10533.             glTexCoord3dv,
  10534.             glTexCoord4f,
  10535.             glTexCoord4s,
  10536.             glTexCoord4i,
  10537.             glTexCoord4d,
  10538.             glTexCoord4fv,
  10539.             glTexCoord4sv,
  10540.             glTexCoord4iv,
  10541.             glTexCoord4dv,
  10542.             glTexCoordPointer,
  10543.             glTexEnvi,
  10544.             glTexEnviv,
  10545.             glTexEnvf,
  10546.             glTexEnvfv,
  10547.             glTexGeni,
  10548.             glTexGeniv,
  10549.             glTexGenf,
  10550.             glTexGenfv,
  10551.             glTexGend,
  10552.             glTexGendv,
  10553.             glTexImage2D,
  10554.             glTexImage1D,
  10555.             glCopyTexImage2D,
  10556.             glCopyTexImage1D,
  10557.             glCopyTexSubImage1D,
  10558.             glCopyTexSubImage2D,
  10559.             glTexParameteri,
  10560.             glTexParameteriv,
  10561.             glTexParameterf,
  10562.             glTexParameterfv,
  10563.             glTexSubImage1D,
  10564.             glTexSubImage2D,
  10565.             glTranslatef,
  10566.             glTranslated,
  10567.             glVertex2f,
  10568.             glVertex2s,
  10569.             glVertex2i,
  10570.             glVertex2d,
  10571.             glVertex2fv,
  10572.             glVertex2sv,
  10573.             glVertex2iv,
  10574.             glVertex2dv,
  10575.             glVertex3f,
  10576.             glVertex3s,
  10577.             glVertex3i,
  10578.             glVertex3d,
  10579.             glVertex3fv,
  10580.             glVertex3sv,
  10581.             glVertex3iv,
  10582.             glVertex3dv,
  10583.             glVertex4f,
  10584.             glVertex4s,
  10585.             glVertex4i,
  10586.             glVertex4d,
  10587.             glVertex4fv,
  10588.             glVertex4sv,
  10589.             glVertex4iv,
  10590.             glVertex4dv,
  10591.             glVertexPointer,
  10592.             glViewport;
  10593.  
  10594.         public Functions(final FunctionProvider provider) {
  10595.             glEnable = provider.getFunctionAddress("glEnable");
  10596.             glDisable = provider.getFunctionAddress("glDisable");
  10597.             glAccum = provider.getFunctionAddress("glAccum");
  10598.             glAlphaFunc = provider.getFunctionAddress("glAlphaFunc");
  10599.             glAreTexturesResident = provider.getFunctionAddress("glAreTexturesResident");
  10600.             glArrayElement = provider.getFunctionAddress("glArrayElement");
  10601.             glBegin = provider.getFunctionAddress("glBegin");
  10602.             glBindTexture = provider.getFunctionAddress("glBindTexture");
  10603.             glBitmap = provider.getFunctionAddress("glBitmap");
  10604.             glBlendFunc = provider.getFunctionAddress("glBlendFunc");
  10605.             glCallList = provider.getFunctionAddress("glCallList");
  10606.             glCallLists = provider.getFunctionAddress("glCallLists");
  10607.             glClear = provider.getFunctionAddress("glClear");
  10608.             glClearAccum = provider.getFunctionAddress("glClearAccum");
  10609.             glClearColor = provider.getFunctionAddress("glClearColor");
  10610.             glClearDepth = provider.getFunctionAddress("glClearDepth");
  10611.             glClearStencil = provider.getFunctionAddress("glClearStencil");
  10612.             glClipPlane = provider.getFunctionAddress("glClipPlane");
  10613.             glColor3b = provider.getFunctionAddress("glColor3b");
  10614.             glColor3s = provider.getFunctionAddress("glColor3s");
  10615.             glColor3i = provider.getFunctionAddress("glColor3i");
  10616.             glColor3f = provider.getFunctionAddress("glColor3f");
  10617.             glColor3d = provider.getFunctionAddress("glColor3d");
  10618.             glColor3ub = provider.getFunctionAddress("glColor3ub");
  10619.             glColor3us = provider.getFunctionAddress("glColor3us");
  10620.             glColor3ui = provider.getFunctionAddress("glColor3ui");
  10621.             glColor3bv = provider.getFunctionAddress("glColor3bv");
  10622.             glColor3sv = provider.getFunctionAddress("glColor3sv");
  10623.             glColor3iv = provider.getFunctionAddress("glColor3iv");
  10624.             glColor3fv = provider.getFunctionAddress("glColor3fv");
  10625.             glColor3dv = provider.getFunctionAddress("glColor3dv");
  10626.             glColor3ubv = provider.getFunctionAddress("glColor3ubv");
  10627.             glColor3usv = provider.getFunctionAddress("glColor3usv");
  10628.             glColor3uiv = provider.getFunctionAddress("glColor3uiv");
  10629.             glColor4b = provider.getFunctionAddress("glColor4b");
  10630.             glColor4s = provider.getFunctionAddress("glColor4s");
  10631.             glColor4i = provider.getFunctionAddress("glColor4i");
  10632.             glColor4f = provider.getFunctionAddress("glColor4f");
  10633.             glColor4d = provider.getFunctionAddress("glColor4d");
  10634.             glColor4ub = provider.getFunctionAddress("glColor4ub");
  10635.             glColor4us = provider.getFunctionAddress("glColor4us");
  10636.             glColor4ui = provider.getFunctionAddress("glColor4ui");
  10637.             glColor4bv = provider.getFunctionAddress("glColor4bv");
  10638.             glColor4sv = provider.getFunctionAddress("glColor4sv");
  10639.             glColor4iv = provider.getFunctionAddress("glColor4iv");
  10640.             glColor4fv = provider.getFunctionAddress("glColor4fv");
  10641.             glColor4dv = provider.getFunctionAddress("glColor4dv");
  10642.             glColor4ubv = provider.getFunctionAddress("glColor4ubv");
  10643.             glColor4usv = provider.getFunctionAddress("glColor4usv");
  10644.             glColor4uiv = provider.getFunctionAddress("glColor4uiv");
  10645.             glColorMask = provider.getFunctionAddress("glColorMask");
  10646.             glColorMaterial = provider.getFunctionAddress("glColorMaterial");
  10647.             glColorPointer = provider.getFunctionAddress("glColorPointer");
  10648.             glCopyPixels = provider.getFunctionAddress("glCopyPixels");
  10649.             glCullFace = provider.getFunctionAddress("glCullFace");
  10650.             glDeleteLists = provider.getFunctionAddress("glDeleteLists");
  10651.             glDepthFunc = provider.getFunctionAddress("glDepthFunc");
  10652.             glDepthMask = provider.getFunctionAddress("glDepthMask");
  10653.             glDepthRange = provider.getFunctionAddress("glDepthRange");
  10654.             glDisableClientState = provider.getFunctionAddress("glDisableClientState");
  10655.             glDrawArrays = provider.getFunctionAddress("glDrawArrays");
  10656.             glDrawBuffer = provider.getFunctionAddress("glDrawBuffer");
  10657.             glDrawElements = provider.getFunctionAddress("glDrawElements");
  10658.             glDrawPixels = provider.getFunctionAddress("glDrawPixels");
  10659.             glEdgeFlag = provider.getFunctionAddress("glEdgeFlag");
  10660.             glEdgeFlagv = provider.getFunctionAddress("glEdgeFlagv");
  10661.             glEdgeFlagPointer = provider.getFunctionAddress("glEdgeFlagPointer");
  10662.             glEnableClientState = provider.getFunctionAddress("glEnableClientState");
  10663.             glEnd = provider.getFunctionAddress("glEnd");
  10664.             glEvalCoord1f = provider.getFunctionAddress("glEvalCoord1f");
  10665.             glEvalCoord1fv = provider.getFunctionAddress("glEvalCoord1fv");
  10666.             glEvalCoord1d = provider.getFunctionAddress("glEvalCoord1d");
  10667.             glEvalCoord1dv = provider.getFunctionAddress("glEvalCoord1dv");
  10668.             glEvalCoord2f = provider.getFunctionAddress("glEvalCoord2f");
  10669.             glEvalCoord2fv = provider.getFunctionAddress("glEvalCoord2fv");
  10670.             glEvalCoord2d = provider.getFunctionAddress("glEvalCoord2d");
  10671.             glEvalCoord2dv = provider.getFunctionAddress("glEvalCoord2dv");
  10672.             glEvalMesh1 = provider.getFunctionAddress("glEvalMesh1");
  10673.             glEvalMesh2 = provider.getFunctionAddress("glEvalMesh2");
  10674.             glEvalPoint1 = provider.getFunctionAddress("glEvalPoint1");
  10675.             glEvalPoint2 = provider.getFunctionAddress("glEvalPoint2");
  10676.             glFeedbackBuffer = provider.getFunctionAddress("glFeedbackBuffer");
  10677.             glFinish = provider.getFunctionAddress("glFinish");
  10678.             glFlush = provider.getFunctionAddress("glFlush");
  10679.             glFogi = provider.getFunctionAddress("glFogi");
  10680.             glFogiv = provider.getFunctionAddress("glFogiv");
  10681.             glFogf = provider.getFunctionAddress("glFogf");
  10682.             glFogfv = provider.getFunctionAddress("glFogfv");
  10683.             glFrontFace = provider.getFunctionAddress("glFrontFace");
  10684.             glGenLists = provider.getFunctionAddress("glGenLists");
  10685.             glGenTextures = provider.getFunctionAddress("glGenTextures");
  10686.             glDeleteTextures = provider.getFunctionAddress("glDeleteTextures");
  10687.             glGetClipPlane = provider.getFunctionAddress("glGetClipPlane");
  10688.             glGetBooleanv = provider.getFunctionAddress("glGetBooleanv");
  10689.             glGetFloatv = provider.getFunctionAddress("glGetFloatv");
  10690.             glGetIntegerv = provider.getFunctionAddress("glGetIntegerv");
  10691.             glGetDoublev = provider.getFunctionAddress("glGetDoublev");
  10692.             glGetError = provider.getFunctionAddress("glGetError");
  10693.             glGetLightiv = provider.getFunctionAddress("glGetLightiv");
  10694.             glGetLightfv = provider.getFunctionAddress("glGetLightfv");
  10695.             glGetMapiv = provider.getFunctionAddress("glGetMapiv");
  10696.             glGetMapfv = provider.getFunctionAddress("glGetMapfv");
  10697.             glGetMapdv = provider.getFunctionAddress("glGetMapdv");
  10698.             glGetMaterialiv = provider.getFunctionAddress("glGetMaterialiv");
  10699.             glGetMaterialfv = provider.getFunctionAddress("glGetMaterialfv");
  10700.             glGetPixelMapfv = provider.getFunctionAddress("glGetPixelMapfv");
  10701.             glGetPixelMapusv = provider.getFunctionAddress("glGetPixelMapusv");
  10702.             glGetPixelMapuiv = provider.getFunctionAddress("glGetPixelMapuiv");
  10703.             glGetPointerv = provider.getFunctionAddress("glGetPointerv");
  10704.             glGetPolygonStipple = provider.getFunctionAddress("glGetPolygonStipple");
  10705.             glGetString = provider.getFunctionAddress("glGetString");
  10706.             glGetTexEnviv = provider.getFunctionAddress("glGetTexEnviv");
  10707.             glGetTexEnvfv = provider.getFunctionAddress("glGetTexEnvfv");
  10708.             glGetTexGeniv = provider.getFunctionAddress("glGetTexGeniv");
  10709.             glGetTexGenfv = provider.getFunctionAddress("glGetTexGenfv");
  10710.             glGetTexGendv = provider.getFunctionAddress("glGetTexGendv");
  10711.             glGetTexImage = provider.getFunctionAddress("glGetTexImage");
  10712.             glGetTexLevelParameteriv = provider.getFunctionAddress("glGetTexLevelParameteriv");
  10713.             glGetTexLevelParameterfv = provider.getFunctionAddress("glGetTexLevelParameterfv");
  10714.             glGetTexParameteriv = provider.getFunctionAddress("glGetTexParameteriv");
  10715.             glGetTexParameterfv = provider.getFunctionAddress("glGetTexParameterfv");
  10716.             glHint = provider.getFunctionAddress("glHint");
  10717.             glInitNames = provider.getFunctionAddress("glInitNames");
  10718.             glInterleavedArrays = provider.getFunctionAddress("glInterleavedArrays");
  10719.             glIsEnabled = provider.getFunctionAddress("glIsEnabled");
  10720.             glIsList = provider.getFunctionAddress("glIsList");
  10721.             glIsTexture = provider.getFunctionAddress("glIsTexture");
  10722.             glLightModeli = provider.getFunctionAddress("glLightModeli");
  10723.             glLightModelf = provider.getFunctionAddress("glLightModelf");
  10724.             glLightModeliv = provider.getFunctionAddress("glLightModeliv");
  10725.             glLightModelfv = provider.getFunctionAddress("glLightModelfv");
  10726.             glLighti = provider.getFunctionAddress("glLighti");
  10727.             glLightf = provider.getFunctionAddress("glLightf");
  10728.             glLightiv = provider.getFunctionAddress("glLightiv");
  10729.             glLightfv = provider.getFunctionAddress("glLightfv");
  10730.             glLineStipple = provider.getFunctionAddress("glLineStipple");
  10731.             glLineWidth = provider.getFunctionAddress("glLineWidth");
  10732.             glListBase = provider.getFunctionAddress("glListBase");
  10733.             glLoadMatrixf = provider.getFunctionAddress("glLoadMatrixf");
  10734.             glLoadMatrixd = provider.getFunctionAddress("glLoadMatrixd");
  10735.             glLoadIdentity = provider.getFunctionAddress("glLoadIdentity");
  10736.             glLoadName = provider.getFunctionAddress("glLoadName");
  10737.             glLogicOp = provider.getFunctionAddress("glLogicOp");
  10738.             glMap1f = provider.getFunctionAddress("glMap1f");
  10739.             glMap1d = provider.getFunctionAddress("glMap1d");
  10740.             glMap2f = provider.getFunctionAddress("glMap2f");
  10741.             glMap2d = provider.getFunctionAddress("glMap2d");
  10742.             glMapGrid1f = provider.getFunctionAddress("glMapGrid1f");
  10743.             glMapGrid1d = provider.getFunctionAddress("glMapGrid1d");
  10744.             glMapGrid2f = provider.getFunctionAddress("glMapGrid2f");
  10745.             glMapGrid2d = provider.getFunctionAddress("glMapGrid2d");
  10746.             glMateriali = provider.getFunctionAddress("glMateriali");
  10747.             glMaterialf = provider.getFunctionAddress("glMaterialf");
  10748.             glMaterialiv = provider.getFunctionAddress("glMaterialiv");
  10749.             glMaterialfv = provider.getFunctionAddress("glMaterialfv");
  10750.             glMatrixMode = provider.getFunctionAddress("glMatrixMode");
  10751.             glMultMatrixf = provider.getFunctionAddress("glMultMatrixf");
  10752.             glMultMatrixd = provider.getFunctionAddress("glMultMatrixd");
  10753.             glFrustum = provider.getFunctionAddress("glFrustum");
  10754.             glNewList = provider.getFunctionAddress("glNewList");
  10755.             glEndList = provider.getFunctionAddress("glEndList");
  10756.             glNormal3f = provider.getFunctionAddress("glNormal3f");
  10757.             glNormal3b = provider.getFunctionAddress("glNormal3b");
  10758.             glNormal3s = provider.getFunctionAddress("glNormal3s");
  10759.             glNormal3i = provider.getFunctionAddress("glNormal3i");
  10760.             glNormal3d = provider.getFunctionAddress("glNormal3d");
  10761.             glNormal3fv = provider.getFunctionAddress("glNormal3fv");
  10762.             glNormal3bv = provider.getFunctionAddress("glNormal3bv");
  10763.             glNormal3sv = provider.getFunctionAddress("glNormal3sv");
  10764.             glNormal3iv = provider.getFunctionAddress("glNormal3iv");
  10765.             glNormal3dv = provider.getFunctionAddress("glNormal3dv");
  10766.             glNormalPointer = provider.getFunctionAddress("glNormalPointer");
  10767.             glOrtho = provider.getFunctionAddress("glOrtho");
  10768.             glPassThrough = provider.getFunctionAddress("glPassThrough");
  10769.             glPixelMapfv = provider.getFunctionAddress("glPixelMapfv");
  10770.             glPixelMapusv = provider.getFunctionAddress("glPixelMapusv");
  10771.             glPixelMapuiv = provider.getFunctionAddress("glPixelMapuiv");
  10772.             glPixelStorei = provider.getFunctionAddress("glPixelStorei");
  10773.             glPixelStoref = provider.getFunctionAddress("glPixelStoref");
  10774.             glPixelTransferi = provider.getFunctionAddress("glPixelTransferi");
  10775.             glPixelTransferf = provider.getFunctionAddress("glPixelTransferf");
  10776.             glPixelZoom = provider.getFunctionAddress("glPixelZoom");
  10777.             glPointSize = provider.getFunctionAddress("glPointSize");
  10778.             glPolygonMode = provider.getFunctionAddress("glPolygonMode");
  10779.             glPolygonOffset = provider.getFunctionAddress("glPolygonOffset");
  10780.             glPolygonStipple = provider.getFunctionAddress("glPolygonStipple");
  10781.             glPushAttrib = provider.getFunctionAddress("glPushAttrib");
  10782.             glPushClientAttrib = provider.getFunctionAddress("glPushClientAttrib");
  10783.             glPopAttrib = provider.getFunctionAddress("glPopAttrib");
  10784.             glPopClientAttrib = provider.getFunctionAddress("glPopClientAttrib");
  10785.             glPopMatrix = provider.getFunctionAddress("glPopMatrix");
  10786.             glPopName = provider.getFunctionAddress("glPopName");
  10787.             glPrioritizeTextures = provider.getFunctionAddress("glPrioritizeTextures");
  10788.             glPushMatrix = provider.getFunctionAddress("glPushMatrix");
  10789.             glPushName = provider.getFunctionAddress("glPushName");
  10790.             glRasterPos2i = provider.getFunctionAddress("glRasterPos2i");
  10791.             glRasterPos2s = provider.getFunctionAddress("glRasterPos2s");
  10792.             glRasterPos2f = provider.getFunctionAddress("glRasterPos2f");
  10793.             glRasterPos2d = provider.getFunctionAddress("glRasterPos2d");
  10794.             glRasterPos2iv = provider.getFunctionAddress("glRasterPos2iv");
  10795.             glRasterPos2sv = provider.getFunctionAddress("glRasterPos2sv");
  10796.             glRasterPos2fv = provider.getFunctionAddress("glRasterPos2fv");
  10797.             glRasterPos2dv = provider.getFunctionAddress("glRasterPos2dv");
  10798.             glRasterPos3i = provider.getFunctionAddress("glRasterPos3i");
  10799.             glRasterPos3s = provider.getFunctionAddress("glRasterPos3s");
  10800.             glRasterPos3f = provider.getFunctionAddress("glRasterPos3f");
  10801.             glRasterPos3d = provider.getFunctionAddress("glRasterPos3d");
  10802.             glRasterPos3iv = provider.getFunctionAddress("glRasterPos3iv");
  10803.             glRasterPos3sv = provider.getFunctionAddress("glRasterPos3sv");
  10804.             glRasterPos3fv = provider.getFunctionAddress("glRasterPos3fv");
  10805.             glRasterPos3dv = provider.getFunctionAddress("glRasterPos3dv");
  10806.             glRasterPos4i = provider.getFunctionAddress("glRasterPos4i");
  10807.             glRasterPos4s = provider.getFunctionAddress("glRasterPos4s");
  10808.             glRasterPos4f = provider.getFunctionAddress("glRasterPos4f");
  10809.             glRasterPos4d = provider.getFunctionAddress("glRasterPos4d");
  10810.             glRasterPos4iv = provider.getFunctionAddress("glRasterPos4iv");
  10811.             glRasterPos4sv = provider.getFunctionAddress("glRasterPos4sv");
  10812.             glRasterPos4fv = provider.getFunctionAddress("glRasterPos4fv");
  10813.             glRasterPos4dv = provider.getFunctionAddress("glRasterPos4dv");
  10814.             glReadBuffer = provider.getFunctionAddress("glReadBuffer");
  10815.             glReadPixels = provider.getFunctionAddress("glReadPixels");
  10816.             glRecti = provider.getFunctionAddress("glRecti");
  10817.             glRects = provider.getFunctionAddress("glRects");
  10818.             glRectf = provider.getFunctionAddress("glRectf");
  10819.             glRectd = provider.getFunctionAddress("glRectd");
  10820.             glRectiv = provider.getFunctionAddress("glRectiv");
  10821.             glRectsv = provider.getFunctionAddress("glRectsv");
  10822.             glRectfv = provider.getFunctionAddress("glRectfv");
  10823.             glRectdv = provider.getFunctionAddress("glRectdv");
  10824.             glRenderMode = provider.getFunctionAddress("glRenderMode");
  10825.             glRotatef = provider.getFunctionAddress("glRotatef");
  10826.             glRotated = provider.getFunctionAddress("glRotated");
  10827.             glScalef = provider.getFunctionAddress("glScalef");
  10828.             glScaled = provider.getFunctionAddress("glScaled");
  10829.             glScissor = provider.getFunctionAddress("glScissor");
  10830.             glSelectBuffer = provider.getFunctionAddress("glSelectBuffer");
  10831.             glShadeModel = provider.getFunctionAddress("glShadeModel");
  10832.             glStencilFunc = provider.getFunctionAddress("glStencilFunc");
  10833.             glStencilMask = provider.getFunctionAddress("glStencilMask");
  10834.             glStencilOp = provider.getFunctionAddress("glStencilOp");
  10835.             glTexCoord1f = provider.getFunctionAddress("glTexCoord1f");
  10836.             glTexCoord1s = provider.getFunctionAddress("glTexCoord1s");
  10837.             glTexCoord1i = provider.getFunctionAddress("glTexCoord1i");
  10838.             glTexCoord1d = provider.getFunctionAddress("glTexCoord1d");
  10839.             glTexCoord1fv = provider.getFunctionAddress("glTexCoord1fv");
  10840.             glTexCoord1sv = provider.getFunctionAddress("glTexCoord1sv");
  10841.             glTexCoord1iv = provider.getFunctionAddress("glTexCoord1iv");
  10842.             glTexCoord1dv = provider.getFunctionAddress("glTexCoord1dv");
  10843.             glTexCoord2f = provider.getFunctionAddress("glTexCoord2f");
  10844.             glTexCoord2s = provider.getFunctionAddress("glTexCoord2s");
  10845.             glTexCoord2i = provider.getFunctionAddress("glTexCoord2i");
  10846.             glTexCoord2d = provider.getFunctionAddress("glTexCoord2d");
  10847.             glTexCoord2fv = provider.getFunctionAddress("glTexCoord2fv");
  10848.             glTexCoord2sv = provider.getFunctionAddress("glTexCoord2sv");
  10849.             glTexCoord2iv = provider.getFunctionAddress("glTexCoord2iv");
  10850.             glTexCoord2dv = provider.getFunctionAddress("glTexCoord2dv");
  10851.             glTexCoord3f = provider.getFunctionAddress("glTexCoord3f");
  10852.             glTexCoord3s = provider.getFunctionAddress("glTexCoord3s");
  10853.             glTexCoord3i = provider.getFunctionAddress("glTexCoord3i");
  10854.             glTexCoord3d = provider.getFunctionAddress("glTexCoord3d");
  10855.             glTexCoord3fv = provider.getFunctionAddress("glTexCoord3fv");
  10856.             glTexCoord3sv = provider.getFunctionAddress("glTexCoord3sv");
  10857.             glTexCoord3iv = provider.getFunctionAddress("glTexCoord3iv");
  10858.             glTexCoord3dv = provider.getFunctionAddress("glTexCoord3dv");
  10859.             glTexCoord4f = provider.getFunctionAddress("glTexCoord4f");
  10860.             glTexCoord4s = provider.getFunctionAddress("glTexCoord4s");
  10861.             glTexCoord4i = provider.getFunctionAddress("glTexCoord4i");
  10862.             glTexCoord4d = provider.getFunctionAddress("glTexCoord4d");
  10863.             glTexCoord4fv = provider.getFunctionAddress("glTexCoord4fv");
  10864.             glTexCoord4sv = provider.getFunctionAddress("glTexCoord4sv");
  10865.             glTexCoord4iv = provider.getFunctionAddress("glTexCoord4iv");
  10866.             glTexCoord4dv = provider.getFunctionAddress("glTexCoord4dv");
  10867.             glTexCoordPointer = provider.getFunctionAddress("glTexCoordPointer");
  10868.             glTexEnvi = provider.getFunctionAddress("glTexEnvi");
  10869.             glTexEnviv = provider.getFunctionAddress("glTexEnviv");
  10870.             glTexEnvf = provider.getFunctionAddress("glTexEnvf");
  10871.             glTexEnvfv = provider.getFunctionAddress("glTexEnvfv");
  10872.             glTexGeni = provider.getFunctionAddress("glTexGeni");
  10873.             glTexGeniv = provider.getFunctionAddress("glTexGeniv");
  10874.             glTexGenf = provider.getFunctionAddress("glTexGenf");
  10875.             glTexGenfv = provider.getFunctionAddress("glTexGenfv");
  10876.             glTexGend = provider.getFunctionAddress("glTexGend");
  10877.             glTexGendv = provider.getFunctionAddress("glTexGendv");
  10878.             glTexImage2D = provider.getFunctionAddress("glTexImage2D");
  10879.             glTexImage1D = provider.getFunctionAddress("glTexImage1D");
  10880.             glCopyTexImage2D = provider.getFunctionAddress("glCopyTexImage2D");
  10881.             glCopyTexImage1D = provider.getFunctionAddress("glCopyTexImage1D");
  10882.             glCopyTexSubImage1D = provider.getFunctionAddress("glCopyTexSubImage1D");
  10883.             glCopyTexSubImage2D = provider.getFunctionAddress("glCopyTexSubImage2D");
  10884.             glTexParameteri = provider.getFunctionAddress("glTexParameteri");
  10885.             glTexParameteriv = provider.getFunctionAddress("glTexParameteriv");
  10886.             glTexParameterf = provider.getFunctionAddress("glTexParameterf");
  10887.             glTexParameterfv = provider.getFunctionAddress("glTexParameterfv");
  10888.             glTexSubImage1D = provider.getFunctionAddress("glTexSubImage1D");
  10889.             glTexSubImage2D = provider.getFunctionAddress("glTexSubImage2D");
  10890.             glTranslatef = provider.getFunctionAddress("glTranslatef");
  10891.             glTranslated = provider.getFunctionAddress("glTranslated");
  10892.             glVertex2f = provider.getFunctionAddress("glVertex2f");
  10893.             glVertex2s = provider.getFunctionAddress("glVertex2s");
  10894.             glVertex2i = provider.getFunctionAddress("glVertex2i");
  10895.             glVertex2d = provider.getFunctionAddress("glVertex2d");
  10896.             glVertex2fv = provider.getFunctionAddress("glVertex2fv");
  10897.             glVertex2sv = provider.getFunctionAddress("glVertex2sv");
  10898.             glVertex2iv = provider.getFunctionAddress("glVertex2iv");
  10899.             glVertex2dv = provider.getFunctionAddress("glVertex2dv");
  10900.             glVertex3f = provider.getFunctionAddress("glVertex3f");
  10901.             glVertex3s = provider.getFunctionAddress("glVertex3s");
  10902.             glVertex3i = provider.getFunctionAddress("glVertex3i");
  10903.             glVertex3d = provider.getFunctionAddress("glVertex3d");
  10904.             glVertex3fv = provider.getFunctionAddress("glVertex3fv");
  10905.             glVertex3sv = provider.getFunctionAddress("glVertex3sv");
  10906.             glVertex3iv = provider.getFunctionAddress("glVertex3iv");
  10907.             glVertex3dv = provider.getFunctionAddress("glVertex3dv");
  10908.             glVertex4f = provider.getFunctionAddress("glVertex4f");
  10909.             glVertex4s = provider.getFunctionAddress("glVertex4s");
  10910.             glVertex4i = provider.getFunctionAddress("glVertex4i");
  10911.             glVertex4d = provider.getFunctionAddress("glVertex4d");
  10912.             glVertex4fv = provider.getFunctionAddress("glVertex4fv");
  10913.             glVertex4sv = provider.getFunctionAddress("glVertex4sv");
  10914.             glVertex4iv = provider.getFunctionAddress("glVertex4iv");
  10915.             glVertex4dv = provider.getFunctionAddress("glVertex4dv");
  10916.             glVertexPointer = provider.getFunctionAddress("glVertexPointer");
  10917.             glViewport = provider.getFunctionAddress("glViewport");
  10918.         }
  10919.  
  10920.     }
  10921.  
  10922. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement