Advertisement
Guest User

Untitled

a guest
Nov 6th, 2013
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 99.65 KB | None | 0 0
  1. /** GLES10JNI V0.04
  2.  * (C) D.M.Scales 2012
  3.  *
  4.  * V0.01 Sep 12 Developed from Android GLES routines
  5.  * V0.02 Oct 12 More routines added
  6.  * V0.03 Oct 12 Changed name
  7.  * V0.04 Oct 12 Documented
  8.  */
  9. package rp.gles;
  10. import java.nio.Buffer;
  11. /**
  12.  * Based on the Android GLES 2.0 routines this modules
  13.  * contains the GLES 2.0 routines supported on the
  14.  * Raspberry PI.
  15.  * <BR>
  16.  * The original code is -
  17.  * <BR>
  18.  * Copyright 2009, The Android Open Source Project.
  19.  * <BR>
  20.  * The original and current code is -
  21.  * <BR>
  22.  * Licensed under the Apache License, Version 2.0.
  23.  * <BR><BR>
  24.  * http://www.khronos.org has detailed documentation
  25.  * of GLES routines.
  26.  */
  27. /*
  28.  * OpenGL ES 2.0 Raspberry PI
  29.  */
  30. public class GLES20JNI {
  31.     public static final int GL_ACTIVE_TEXTURE                          = 0x84E0;
  32.     public static final int GL_DEPTH_BUFFER_BIT                        = 0x00000100;
  33.     public static final int GL_STENCIL_BUFFER_BIT                      = 0x00000400;
  34.     public static final int GL_COLOR_BUFFER_BIT                        = 0x00004000;
  35.     public static final int GL_FALSE                                   = 0;
  36.     public static final int GL_TRUE                                    = 1;
  37.     public static final int GL_POINTS                                  = 0x0000;
  38.     public static final int GL_LINES                                   = 0x0001;
  39.     public static final int GL_LINE_LOOP                               = 0x0002;
  40.     public static final int GL_LINE_STRIP                              = 0x0003;
  41.     public static final int GL_TRIANGLES                               = 0x0004;
  42.     public static final int GL_TRIANGLE_STRIP                          = 0x0005;
  43.     public static final int GL_TRIANGLE_FAN                            = 0x0006;
  44.     public static final int GL_ZERO                                    = 0;
  45.     public static final int GL_ONE                                     = 1;
  46.     public static final int GL_SRC_COLOR                               = 0x0300;
  47.     public static final int GL_ONE_MINUS_SRC_COLOR                     = 0x0301;
  48.     public static final int GL_SRC_ALPHA                               = 0x0302;
  49.     public static final int GL_ONE_MINUS_SRC_ALPHA                     = 0x0303;
  50.     public static final int GL_DST_ALPHA                               = 0x0304;
  51.     public static final int GL_ONE_MINUS_DST_ALPHA                     = 0x0305;
  52.     public static final int GL_DST_COLOR                               = 0x0306;
  53.     public static final int GL_ONE_MINUS_DST_COLOR                     = 0x0307;
  54.     public static final int GL_SRC_ALPHA_SATURATE                      = 0x0308;
  55.     public static final int GL_FUNC_ADD                                = 0x8006;
  56.     public static final int GL_BLEND_EQUATION                          = 0x8009;
  57.     public static final int GL_BLEND_EQUATION_RGB                      = 0x8009;   /* same as BLEND_EQUATION */
  58.     public static final int GL_BLEND_EQUATION_ALPHA                    = 0x883D;
  59.     public static final int GL_FUNC_SUBTRACT                           = 0x800A;
  60.     public static final int GL_FUNC_REVERSE_SUBTRACT                   = 0x800B;
  61.     public static final int GL_BLEND_DST_RGB                           = 0x80C8;
  62.     public static final int GL_BLEND_SRC_RGB                           = 0x80C9;
  63.     public static final int GL_BLEND_DST_ALPHA                         = 0x80CA;
  64.     public static final int GL_BLEND_SRC_ALPHA                         = 0x80CB;
  65.     public static final int GL_CONSTANT_COLOR                          = 0x8001;
  66.     public static final int GL_ONE_MINUS_CONSTANT_COLOR                = 0x8002;
  67.     public static final int GL_CONSTANT_ALPHA                          = 0x8003;
  68.     public static final int GL_ONE_MINUS_CONSTANT_ALPHA                = 0x8004;
  69.     public static final int GL_BLEND_COLOR                             = 0x8005;
  70.     public static final int GL_ARRAY_BUFFER                            = 0x8892;
  71.     public static final int GL_ELEMENT_ARRAY_BUFFER                    = 0x8893;
  72.     public static final int GL_ARRAY_BUFFER_BINDING                    = 0x8894;
  73.     public static final int GL_ELEMENT_ARRAY_BUFFER_BINDING            = 0x8895;
  74.     public static final int GL_STREAM_DRAW                             = 0x88E0;
  75.     public static final int GL_STATIC_DRAW                             = 0x88E4;
  76.     public static final int GL_DYNAMIC_DRAW                            = 0x88E8;
  77.     public static final int GL_BUFFER_SIZE                             = 0x8764;
  78.     public static final int GL_BUFFER_USAGE                            = 0x8765;
  79.     public static final int GL_CURRENT_VERTEX_ATTRIB                   = 0x8626;
  80.     public static final int GL_FRONT                                   = 0x0404;
  81.     public static final int GL_BACK                                    = 0x0405;
  82.     public static final int GL_FRONT_AND_BACK                          = 0x0408;
  83.     public static final int GL_TEXTURE_2D                              = 0x0DE1;
  84.     public static final int GL_CULL_FACE                               = 0x0B44;
  85.     public static final int GL_BLEND                                   = 0x0BE2;
  86.     public static final int GL_DITHER                                  = 0x0BD0;
  87.     public static final int GL_STENCIL_TEST                            = 0x0B90;
  88.     public static final int GL_DEPTH_TEST                              = 0x0B71;
  89.     public static final int GL_SCISSOR_TEST                            = 0x0C11;
  90.     public static final int GL_POLYGON_OFFSET_FILL                     = 0x8037;
  91.     public static final int GL_SAMPLE_ALPHA_TO_COVERAGE                = 0x809E;
  92.     public static final int GL_SAMPLE_COVERAGE                         = 0x80A0;
  93.     public static final int GL_NO_ERROR                                = 0;
  94.     public static final int GL_INVALID_ENUM                            = 0x0500;
  95.     public static final int GL_INVALID_VALUE                           = 0x0501;
  96.     public static final int GL_INVALID_OPERATION                       = 0x0502;
  97.     public static final int GL_OUT_OF_MEMORY                           = 0x0505;
  98.     public static final int GL_CW                                      = 0x0900;
  99.     public static final int GL_CCW                                     = 0x0901;
  100.     public static final int GL_LINE_WIDTH                              = 0x0B21;
  101.     public static final int GL_ALIASED_POINT_SIZE_RANGE                = 0x846D;
  102.     public static final int GL_ALIASED_LINE_WIDTH_RANGE                = 0x846E;
  103.     public static final int GL_CULL_FACE_MODE                          = 0x0B45;
  104.     public static final int GL_FRONT_FACE                              = 0x0B46;
  105.     public static final int GL_DEPTH_RANGE                             = 0x0B70;
  106.     public static final int GL_DEPTH_WRITEMASK                         = 0x0B72;
  107.     public static final int GL_DEPTH_CLEAR_VALUE                       = 0x0B73;
  108.     public static final int GL_DEPTH_FUNC                              = 0x0B74;
  109.     public static final int GL_STENCIL_CLEAR_VALUE                     = 0x0B91;
  110.     public static final int GL_STENCIL_FUNC                            = 0x0B92;
  111.     public static final int GL_STENCIL_FAIL                            = 0x0B94;
  112.     public static final int GL_STENCIL_PASS_DEPTH_FAIL                 = 0x0B95;
  113.     public static final int GL_STENCIL_PASS_DEPTH_PASS                 = 0x0B96;
  114.     public static final int GL_STENCIL_REF                             = 0x0B97;
  115.     public static final int GL_STENCIL_VALUE_MASK                      = 0x0B93;
  116.     public static final int GL_STENCIL_WRITEMASK                       = 0x0B98;
  117.     public static final int GL_STENCIL_BACK_FUNC                       = 0x8800;
  118.     public static final int GL_STENCIL_BACK_FAIL                       = 0x8801;
  119.     public static final int GL_STENCIL_BACK_PASS_DEPTH_FAIL            = 0x8802;
  120.     public static final int GL_STENCIL_BACK_PASS_DEPTH_PASS            = 0x8803;
  121.     public static final int GL_STENCIL_BACK_REF                        = 0x8CA3;
  122.     public static final int GL_STENCIL_BACK_VALUE_MASK                 = 0x8CA4;
  123.     public static final int GL_STENCIL_BACK_WRITEMASK                  = 0x8CA5;
  124.     public static final int GL_VIEWPORT                                = 0x0BA2;
  125.     public static final int GL_SCISSOR_BOX                             = 0x0C10;
  126.     public static final int GL_COLOR_CLEAR_VALUE                       = 0x0C22;
  127.     public static final int GL_COLOR_WRITEMASK                         = 0x0C23;
  128.     public static final int GL_UNPACK_ALIGNMENT                        = 0x0CF5;
  129.     public static final int GL_PACK_ALIGNMENT                          = 0x0D05;
  130.     public static final int GL_MAX_TEXTURE_SIZE                        = 0x0D33;
  131.     public static final int GL_MAX_VIEWPORT_DIMS                       = 0x0D3A;
  132.     public static final int GL_SUBPIXEL_BITS                           = 0x0D50;
  133.     public static final int GL_RED_BITS                                = 0x0D52;
  134.     public static final int GL_GREEN_BITS                              = 0x0D53;
  135.     public static final int GL_BLUE_BITS                               = 0x0D54;
  136.     public static final int GL_ALPHA_BITS                              = 0x0D55;
  137.     public static final int GL_DEPTH_BITS                              = 0x0D56;
  138.     public static final int GL_STENCIL_BITS                            = 0x0D57;
  139.     public static final int GL_POLYGON_OFFSET_UNITS                    = 0x2A00;
  140.     public static final int GL_POLYGON_OFFSET_FACTOR                   = 0x8038;
  141.     public static final int GL_TEXTURE_BINDING_2D                      = 0x8069;
  142.     public static final int GL_SAMPLE_BUFFERS                          = 0x80A8;
  143.     public static final int GL_SAMPLES                                 = 0x80A9;
  144.     public static final int GL_SAMPLE_COVERAGE_VALUE                   = 0x80AA;
  145.     public static final int GL_SAMPLE_COVERAGE_INVERT                  = 0x80AB;
  146.     public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS          = 0x86A2;
  147.     public static final int GL_COMPRESSED_TEXTURE_FORMATS              = 0x86A3;
  148.     public static final int GL_DONT_CARE                               = 0x1100;
  149.     public static final int GL_FASTEST                                 = 0x1101;
  150.     public static final int GL_NICEST                                  = 0x1102;
  151.     public static final int GL_GENERATE_MIPMAP_HINT                    = 0x8192;
  152.     public static final int GL_BYTE                                    = 0x1400;
  153.     public static final int GL_UNSIGNED_BYTE                           = 0x1401;
  154.     public static final int GL_SHORT                                   = 0x1402;
  155.     public static final int GL_UNSIGNED_SHORT                          = 0x1403;
  156.     public static final int GL_INT                                     = 0x1404;
  157.     public static final int GL_UNSIGNED_INT                            = 0x1405;
  158.     public static final int GL_FLOAT                                   = 0x1406;
  159.     public static final int GL_FIXED                                   = 0x140C;
  160.     public static final int GL_DEPTH_COMPONENT                         = 0x1902;
  161.     public static final int GL_ALPHA                                   = 0x1906;
  162.     public static final int GL_RGB                                     = 0x1907;
  163.     public static final int GL_RGBA                                    = 0x1908;
  164.     public static final int GL_LUMINANCE                               = 0x1909;
  165.     public static final int GL_LUMINANCE_ALPHA                         = 0x190A;
  166.     public static final int GL_UNSIGNED_SHORT_4_4_4_4                  = 0x8033;
  167.     public static final int GL_UNSIGNED_SHORT_5_5_51                  = 0x8034;
  168.     public static final int GL_UNSIGNED_SHORT_5_6_5                    = 0x8363;
  169.     public static final int GL_FRAGMENT_SHADER                           = 0x8B30;
  170.     public static final int GL_VERTEX_SHADER                             = 0x8B31;
  171.     public static final int GL_MAX_VERTEX_ATTRIBS                        = 0x8869;
  172.     public static final int GL_MAX_VERTEX_UNIFORM_VECTORS                = 0x8DFB;
  173.     public static final int GL_MAX_VARYING_VECTORS                       = 0x8DFC;
  174.     public static final int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS          = 0x8B4D;
  175.     public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS            = 0x8B4C;
  176.     public static final int GL_MAX_TEXTURE_IMAGE_UNITS                   = 0x8872;
  177.     public static final int GL_MAX_FRAGMENT_UNIFORM_VECTORS              = 0x8DFD;
  178.     public static final int GL_SHADER_TYPE                               = 0x8B4F;
  179.     public static final int GL_DELETE_STATUS                             = 0x8B80;
  180.     public static final int GL_LINK_STATUS                               = 0x8B82;
  181.     public static final int GL_VALIDATE_STATUS                           = 0x8B83;
  182.     public static final int GL_ATTACHED_SHADERS                          = 0x8B85;
  183.     public static final int GL_ACTIVE_UNIFORMS                           = 0x8B86;
  184.     public static final int GL_ACTIVE_UNIFORM_MAX_LENGTH                 = 0x8B87;
  185.     public static final int GL_ACTIVE_ATTRIBUTES                         = 0x8B89;
  186.     public static final int GL_ACTIVE_ATTRIBUTE_MAX_LENGTH               = 0x8B8A;
  187.     public static final int GL_SHADING_LANGUAGE_VERSION                  = 0x8B8C;
  188.     public static final int GL_CURRENT_PROGRAM                           = 0x8B8D;
  189.     public static final int GL_NEVER                                   = 0x0200;
  190.     public static final int GL_LESS                                    = 0x0201;
  191.     public static final int GL_EQUAL                                   = 0x0202;
  192.     public static final int GL_LEQUAL                                  = 0x0203;
  193.     public static final int GL_GREATER                                 = 0x0204;
  194.     public static final int GL_NOTEQUAL                                = 0x0205;
  195.     public static final int GL_GEQUAL                                  = 0x0206;
  196.     public static final int GL_ALWAYS                                  = 0x0207;
  197.     public static final int GL_KEEP                                    = 0x1E00;
  198.     public static final int GL_REPLACE                                 = 0x1E01;
  199.     public static final int GL_INCR                                    = 0x1E02;
  200.     public static final int GL_DECR                                    = 0x1E03;
  201.     public static final int GL_INVERT                                  = 0x150A;
  202.     public static final int GL_INCR_WRAP                               = 0x8507;
  203.     public static final int GL_DECR_WRAP                               = 0x8508;
  204.     public static final int GL_VENDOR                                  = 0x1F00;
  205.     public static final int GL_RENDERER                                = 0x1F01;
  206.     public static final int GL_VERSION                                 = 0x1F02;
  207.     public static final int GL_EXTENSIONS                              = 0x1F03;
  208.     public static final int GL_NEAREST                                 = 0x2600;
  209.     public static final int GL_LINEAR                                  = 0x2601;
  210.     public static final int GL_NEAREST_MIPMAP_NEAREST                  = 0x2700;
  211.     public static final int GL_LINEAR_MIPMAP_NEAREST                   = 0x2701;
  212.     public static final int GL_NEAREST_MIPMAP_LINEAR                   = 0x2702;
  213.     public static final int GL_LINEAR_MIPMAP_LINEAR                    = 0x2703;
  214.     public static final int GL_TEXTURE_MAG_FILTER                      = 0x2800;
  215.     public static final int GL_TEXTURE_MIN_FILTER                      = 0x2801;
  216.     public static final int GL_TEXTURE_WRAP_S                          = 0x2802;
  217.     public static final int GL_TEXTURE_WRAP_T                          = 0x2803;
  218.     public static final int GL_TEXTURE                                 = 0x1702;
  219.     public static final int GL_TEXTURE_CUBE_MAP                        = 0x8513;
  220.     public static final int GL_TEXTURE_BINDING_CUBE_MAP                = 0x8514;
  221.     public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X             = 0x8515;
  222.     public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X             = 0x8516;
  223.     public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y             = 0x8517;
  224.     public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y             = 0x8518;
  225.     public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z             = 0x8519;
  226.     public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z             = 0x851A;
  227.     public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE               = 0x851C;
  228.     public static final int GL_TEXTURE0                                = 0x84C0;
  229.     public static final int GL_TEXTURE1                                = 0x84C1;
  230.     public static final int GL_TEXTURE2                                = 0x84C2;
  231.     public static final int GL_TEXTURE3                                = 0x84C3;
  232.     public static final int GL_TEXTURE4                                = 0x84C4;
  233.     public static final int GL_TEXTURE5                                = 0x84C5;
  234.     public static final int GL_TEXTURE6                                = 0x84C6;
  235.     public static final int GL_TEXTURE7                                = 0x84C7;
  236.     public static final int GL_TEXTURE8                                = 0x84C8;
  237.     public static final int GL_TEXTURE9                                = 0x84C9;
  238.     public static final int GL_TEXTURE10                               = 0x84CA;
  239.     public static final int GL_TEXTURE11                               = 0x84CB;
  240.     public static final int GL_TEXTURE12                               = 0x84CC;
  241.     public static final int GL_TEXTURE13                               = 0x84CD;
  242.     public static final int GL_TEXTURE14                               = 0x84CE;
  243.     public static final int GL_TEXTURE15                               = 0x84CF;
  244.     public static final int GL_TEXTURE16                               = 0x84D0;
  245.     public static final int GL_TEXTURE17                               = 0x84D1;
  246.     public static final int GL_TEXTURE18                               = 0x84D2;
  247.     public static final int GL_TEXTURE19                               = 0x84D3;
  248.     public static final int GL_TEXTURE20                               = 0x84D4;
  249.     public static final int GL_TEXTURE21                               = 0x84D5;
  250.     public static final int GL_TEXTURE22                               = 0x84D6;
  251.     public static final int GL_TEXTURE23                               = 0x84D7;
  252.     public static final int GL_TEXTURE24                               = 0x84D8;
  253.     public static final int GL_TEXTURE25                               = 0x84D9;
  254.     public static final int GL_TEXTURE26                               = 0x84DA;
  255.     public static final int GL_TEXTURE27                               = 0x84DB;
  256.     public static final int GL_TEXTURE28                               = 0x84DC;
  257.     public static final int GL_TEXTURE29                               = 0x84DD;
  258.     public static final int GL_TEXTURE30                               = 0x84DE;
  259.     public static final int GL_TEXTURE31                               = 0x84DF;
  260.     public static final int GL_REPEAT                                  = 0x2901;
  261.     public static final int GL_CLAMP_TO_EDGE                           = 0x812F;
  262.     public static final int GL_MIRRORED_REPEAT                         = 0x8370;
  263.     public static final int GL_FLOAT_VEC2                              = 0x8B50;
  264.     public static final int GL_FLOAT_VEC3                              = 0x8B51;
  265.     public static final int GL_FLOAT_VEC4                              = 0x8B52;
  266.     public static final int GL_INT_VEC2                                = 0x8B53;
  267.     public static final int GL_INT_VEC3                                = 0x8B54;
  268.     public static final int GL_INT_VEC4                                = 0x8B55;
  269.     public static final int GL_BOOL                                    = 0x8B56;
  270.     public static final int GL_BOOL_VEC2                               = 0x8B57;
  271.     public static final int GL_BOOL_VEC3                               = 0x8B58;
  272.     public static final int GL_BOOL_VEC4                               = 0x8B59;
  273.     public static final int GL_FLOAT_MAT2                              = 0x8B5A;
  274.     public static final int GL_FLOAT_MAT3                              = 0x8B5B;
  275.     public static final int GL_FLOAT_MAT4                              = 0x8B5C;
  276.     public static final int GL_SAMPLER_2D                              = 0x8B5E;
  277.     public static final int GL_SAMPLER_CUBE                            = 0x8B60;
  278.     public static final int GL_VERTEX_ATTRIB_ARRAY_ENABLED                 = 0x8622;
  279.     public static final int GL_VERTEX_ATTRIB_ARRAY_SIZE                    = 0x8623;
  280.     public static final int GL_VERTEX_ATTRIB_ARRAY_STRIDE                  = 0x8624;
  281.     public static final int GL_VERTEX_ATTRIB_ARRAY_TYPE                    = 0x8625;
  282.     public static final int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED              = 0x886A;
  283.     public static final int GL_VERTEX_ATTRIB_ARRAY_POINTER                 = 0x8645;
  284.     public static final int GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING          = 0x889F;
  285.     public static final int GL_IMPLEMENTATION_COLOR_READ_TYPE            = 0x8B9A;
  286.     public static final int GL_IMPLEMENTATION_COLOR_READ_FORMAT          = 0x8B9B;
  287.     public static final int GL_COMPILE_STATUS                          = 0x8B81;
  288.     public static final int GL_INFO_LOG_LENGTH                         = 0x8B84;
  289.     public static final int GL_SHADER_SOURCE_LENGTH                    = 0x8B88;
  290.     public static final int GL_SHADER_COMPILER                         = 0x8DFA;
  291.     public static final int GL_SHADER_BINARY_FORMATS                   = 0x8DF8;
  292.     public static final int GL_NUM_SHADER_BINARY_FORMATS               = 0x8DF9;
  293.     public static final int GL_LOW_FLOAT                               = 0x8DF0;
  294.     public static final int GL_MEDIUM_FLOAT                            = 0x8DF1;
  295.     public static final int GL_HIGH_FLOAT                              = 0x8DF2;
  296.     public static final int GL_LOW_INT                                 = 0x8DF3;
  297.     public static final int GL_MEDIUM_INT                              = 0x8DF4;
  298.     public static final int GL_HIGH_INT                                = 0x8DF5;
  299.     public static final int GL_FRAMEBUFFER                             = 0x8D40;
  300.     public static final int GL_RENDERBUFFER                            = 0x8D41;
  301.     public static final int GL_RGBA4                                   = 0x8056;
  302.     public static final int GL_RGB5_A1                                 = 0x8057;
  303.     public static final int GL_RGB565                                  = 0x8D62;
  304.     public static final int GL_DEPTH_COMPONENT16                       = 0x81A5;
  305.     public static final int GL_STENCIL_INDEX                           = 0x1901;
  306.     public static final int GL_STENCIL_INDEX8                          = 0x8D48;
  307.     public static final int GL_RENDERBUFFER_WIDTH                      = 0x8D42;
  308.     public static final int GL_RENDERBUFFER_HEIGHT                     = 0x8D43;
  309.     public static final int GL_RENDERBUFFER_INTERNAL_FORMAT            = 0x8D44;
  310.     public static final int GL_RENDERBUFFER_RED_SIZE                   = 0x8D50;
  311.     public static final int GL_RENDERBUFFER_GREEN_SIZE                 = 0x8D51;
  312.     public static final int GL_RENDERBUFFER_BLUE_SIZE                  = 0x8D52;
  313.     public static final int GL_RENDERBUFFER_ALPHA_SIZE                 = 0x8D53;
  314.     public static final int GL_RENDERBUFFER_DEPTH_SIZE                 = 0x8D54;
  315.     public static final int GL_RENDERBUFFER_STENCIL_SIZE               = 0x8D55;
  316.     public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE      = 0x8CD0;
  317.     public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME      = 0x8CD1;
  318.     public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL    = 0x8CD2;
  319.     public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8CD3;
  320.     public static final int GL_COLOR_ATTACHMENT0                       = 0x8CE0;
  321.     public static final int GL_DEPTH_ATTACHMENT                        = 0x8D00;
  322.     public static final int GL_STENCIL_ATTACHMENT                      = 0x8D20;
  323.     public static final int GL_NONE                                    = 0;
  324.     public static final int GL_FRAMEBUFFER_COMPLETE                    = 0x8CD5;
  325.     public static final int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT       = 0x8CD6;
  326.     public static final int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT          = 0x8CD7;
  327.     public static final int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS       = 0x8CD9;
  328.     public static final int GL_FRAMEBUFFER_UNSUPPORTED                 = 0x8CDD;
  329.     public static final int GL_FRAMEBUFFER_BINDING                     = 0x8CA6;
  330.     public static final int GL_RENDERBUFFER_BINDING                    = 0x8CA7;
  331.     public static final int GL_MAX_RENDERBUFFER_SIZE                   = 0x84E8;
  332.     public static final int GL_INVALID_FRAMEBUFFER_OPERATION           = 0x0506;
  333.  
  334.     private static Buffer _colorPointer;
  335.     private static Buffer _normalPointer;
  336.     private static Buffer _texCoordPointer;
  337.     private static Buffer _vertexPointer;
  338.  
  339.     private static native void nativeClassInit();
  340. /**
  341.  * C function void glActiveTexture ( GLenum texture )
  342.  * @param texture
  343.  */
  344.     public static native void glActiveTexture(
  345.         int texture
  346.     );
  347. /**
  348.  * C function void glAttachShader ( GLuint program, GLuint shader )
  349.  * @param program
  350.  * @param shader
  351.  */
  352.     public static native void glAttachShader(
  353.         int program,
  354.         int shader
  355.     );
  356. /**
  357.  * C function void glBindAttribLocation ( GLuint program, GLuint index, const char *name )
  358.  * @param program
  359.  * @param index
  360.  * @param name
  361.  */
  362.     public static native void glBindAttribLocation(
  363.         int program,
  364.         int index,
  365.         String name
  366.     );
  367. /**
  368.  * C function void glBindBuffer ( GLenum target, GLuint buffer )
  369.  * @param target
  370.  * @param buffer
  371.  */
  372.     public static native void glBindBuffer(
  373.         int target,
  374.         int buffer
  375.     );
  376. /**
  377.  * C function void glBindFramebuffer ( GLenum target, GLuint framebuffer )
  378.  * @param target
  379.  * @param framebuffer
  380.  */
  381.     public static native void glBindFramebuffer(
  382.         int target,
  383.         int framebuffer
  384.     );
  385. /**
  386.  * C function void glBindRenderbuffer ( GLenum target, GLuint renderbuffer )
  387.  * @param target
  388.  * @param renderbuffer
  389.  */
  390.     public static native void glBindRenderbuffer(
  391.         int target,
  392.         int renderbuffer
  393.     );
  394. /**
  395.  * C function void glBindTexture ( GLenum target, GLuint texture )
  396.  * @param target
  397.  * @param texture
  398.  */
  399.     public static native void glBindTexture(
  400.         int target,
  401.         int texture
  402.     );
  403. /**
  404.  * C function void glBlendColor ( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha )
  405.  * @param red
  406.  * @param green
  407.  * @param blue
  408.  * @param alpha
  409.  */
  410.     public static native void glBlendColor(
  411.         float red,
  412.         float green,
  413.         float blue,
  414.         float alpha
  415.     );
  416. /**
  417.  * C function void glBlendEquation ( GLenum mode )
  418.  * @param mode
  419.  */
  420.     public static native void glBlendEquation(
  421.         int mode
  422.     );
  423. /**
  424.  * C function void glBlendEquationSeparate ( GLenum modeRGB, GLenum modeAlpha )
  425.  * @param modeRGB
  426.  * @param modeAlpha
  427.  */
  428.     public static native void glBlendEquationSeparate(
  429.         int modeRGB,
  430.         int modeAlpha
  431.     );
  432. /**
  433.  * C function void glBlendFunc ( GLenum sfactor, GLenum dfactor )
  434.  * @param sfactor
  435.  * @param dfactor
  436.  */
  437.     public static native void glBlendFunc(
  438.         int sfactor,
  439.         int dfactor
  440.     );
  441. /**
  442.  * C function void glBlendFuncSeparate ( GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha )
  443.  * @param srcRGB
  444.  * @param dstRGB
  445.  * @param srcAlpha
  446.  * @param dstAlpha
  447.  */
  448.     public static native void glBlendFuncSeparate(
  449.         int srcRGB,
  450.         int dstRGB,
  451.         int srcAlpha,
  452.         int dstAlpha
  453.     );
  454. /**
  455.  * C function void glBufferData ( GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage )
  456.  * @param target
  457.  * @param size
  458.  * @param data
  459.  * @param usage
  460.  */
  461.     public static native void glBufferData(
  462.         int target,
  463.         int size,
  464.         java.nio.Buffer data,
  465.         int usage
  466.     );
  467. /**
  468.  * C function void glBufferSubData ( GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data )
  469.  * @param target
  470.  * @param offset
  471.  * @param size
  472.  * @param data
  473.  */
  474.     public static native void glBufferSubData(
  475.         int target,
  476.         int offset,
  477.         int size,
  478.         java.nio.Buffer data
  479.     );
  480. /**
  481.  * C function GLenum glCheckFramebufferStatus ( GLenum target )
  482.  * @param target
  483.  * @return
  484.  */
  485.     public static native int glCheckFramebufferStatus(
  486.         int target
  487.     );
  488. /**
  489.  * C function void glClear ( GLbitfield mask )
  490.  * @param mask
  491.  */
  492.     public static native void glClear(
  493.         int mask
  494.     );
  495. /**
  496.  * C function void glClearColor ( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha )
  497.  * @param red
  498.  * @param green
  499.  * @param blue
  500.  * @param alpha
  501.  */
  502.     public static native void glClearColor(
  503.         float red,
  504.         float green,
  505.         float blue,
  506.         float alpha
  507.     );
  508. /**
  509.  * C function void glClearDepthf ( GLclampf depth )
  510.  * @param depth
  511.  */
  512.     public static native void glClearDepthf(
  513.         float depth
  514.     );
  515. /**
  516.  * C function void glClearStencil ( GLint s )
  517.  * @param s
  518.  */
  519.     public static native void glClearStencil(
  520.         int s
  521.     );
  522. /**
  523.  * C function void glColorMask ( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha )
  524.  * @param red
  525.  * @param green
  526.  * @param blue
  527.  * @param alpha
  528.  */
  529.     public static native void glColorMask(
  530.         boolean red,
  531.         boolean green,
  532.         boolean blue,
  533.         boolean alpha
  534.     );
  535. /**
  536.  * C function void glCompileShader ( GLuint shader )
  537.  * @param shader
  538.  */
  539.     public static native void glCompileShader(
  540.         int shader
  541.     );
  542. /**
  543.  * C function void glCompressedTexImage2D ( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data )
  544.  * @param target
  545.  * @param level
  546.  * @param internalformat
  547.  * @param width
  548.  * @param height
  549.  * @param border
  550.  * @param imageSize
  551.  * @param data
  552.  */
  553.     public static native void glCompressedTexImage2D(
  554.         int target,
  555.         int level,
  556.         int internalformat,
  557.         int width,
  558.         int height,
  559.         int border,
  560.         int imageSize,
  561.         java.nio.Buffer data
  562.     );
  563. /**
  564.  * C function void glCompressedTexSubImage2D ( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data )
  565.  * @param target
  566.  * @param level
  567.  * @param xoffset
  568.  * @param yoffset
  569.  * @param width
  570.  * @param height
  571.  * @param format
  572.  * @param imageSize
  573.  * @param data
  574.  */
  575.     public static native void glCompressedTexSubImage2D(
  576.         int target,
  577.         int level,
  578.         int xoffset,
  579.         int yoffset,
  580.         int width,
  581.         int height,
  582.         int format,
  583.         int imageSize,
  584.         java.nio.Buffer data
  585.     );
  586. /**
  587.  * C function void glCopyTexImage2D ( GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border )
  588.  * @param target
  589.  * @param level
  590.  * @param internalformat
  591.  * @param x
  592.  * @param y
  593.  * @param width
  594.  * @param height
  595.  * @param border
  596.  */
  597.     public static native void glCopyTexImage2D(
  598.         int target,
  599.         int level,
  600.         int internalformat,
  601.         int x,
  602.         int y,
  603.         int width,
  604.         int height,
  605.         int border
  606.     );
  607. /**
  608.  * C function void glCopyTexSubImage2D ( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height )
  609.  * @param target
  610.  * @param level
  611.  * @param xoffset
  612.  * @param yoffset
  613.  * @param x
  614.  * @param y
  615.  * @param width
  616.  * @param height
  617.  */
  618.     public static native void glCopyTexSubImage2D(
  619.         int target,
  620.         int level,
  621.         int xoffset,
  622.         int yoffset,
  623.         int x,
  624.         int y,
  625.         int width,
  626.         int height
  627.     );
  628. /**
  629.  * C function GLuint glCreateProgram ( void )
  630.  * @return
  631.  */
  632.     public static native int glCreateProgram(
  633.     );
  634. /**
  635.  * C function GLuint glCreateShader ( GLenum type )
  636.  * @param type
  637.  * @return
  638.  */
  639.     public static native int glCreateShader(
  640.         int type
  641.     );
  642. /**
  643.  * C function void glCullFace ( GLenum mode )
  644.  * @param mode
  645.  */
  646.     public static native void glCullFace(
  647.         int mode
  648.     );
  649. /**
  650.  * C function void glDeleteBuffers ( GLsizei n, const GLuint *buffers )
  651.  * @param n
  652.  * @param buffers
  653.  * @param offset
  654.  */
  655.     public static void glDeleteBuffers(
  656.         int n,
  657.         int[] buffers,
  658.         int offset
  659.     ) {
  660.       glDeleteBuffers1(
  661.             n,
  662.             buffers,
  663.             offset
  664.       );
  665.     }  
  666. /**
  667.  * C function void glDeleteBuffers ( GLsizei n, const GLuint *buffers )
  668.  * @param n
  669.  * @param buffers
  670.  */
  671.     public static void glDeleteBuffers(
  672.         int n,
  673.         java.nio.IntBuffer buffers
  674.     ) {
  675.       glDeleteBuffers2(
  676.             n,
  677.             buffers
  678.       );
  679.     }
  680.     static native void glDeleteBuffers1(
  681.         int n,
  682.         int[] buffers,
  683.         int offset
  684.     );
  685.     static native void glDeleteBuffers2(
  686.         int n,
  687.         java.nio.IntBuffer buffers
  688.     );
  689. /**
  690.  * C function void glDeleteFramebuffers ( GLsizei n, const GLuint *framebuffers )
  691.  * @param n
  692.  * @param framebuffers
  693.  * @param offset
  694.  */
  695.     public static void glDeleteFramebuffers(
  696.         int n,
  697.         int[] framebuffers,
  698.         int offset
  699.     ) {
  700.         glDeleteFramebuffers1(
  701.                 n,
  702.                 framebuffers,
  703.                 offset
  704.         );
  705.     }      
  706. /**
  707.  * C function void glDeleteFramebuffers ( GLsizei n, const GLuint *framebuffers )
  708.  * @param n
  709.  * @param framebuffers
  710.  */
  711.     public static void glDeleteFramebuffers(
  712.         int n,
  713.         java.nio.IntBuffer framebuffers
  714.     ) {
  715.       glDeleteFramebuffers2(
  716.             n,
  717.             framebuffers
  718.       );
  719.     }
  720.     static native void glDeleteFramebuffers1(
  721.         int n,
  722.         int[] framebuffers,
  723.         int offset
  724.     );
  725.     static native void glDeleteFramebuffers2(
  726.         int n,
  727.         java.nio.IntBuffer framebuffers
  728.     );
  729. /**
  730.  * C function void glDeleteProgram ( GLuint program )
  731.  * @param program
  732.  */
  733.     public static native void glDeleteProgram(
  734.         int program
  735.     );
  736. /**
  737.  * C function void glDeleteRenderbuffers ( GLsizei n, const GLuint *renderbuffers )
  738.  * @param n
  739.  * @param renderbuffers
  740.  * @param offset
  741.  */
  742.     public static void glDeleteRenderbuffers(
  743.         int n,
  744.         int[] renderbuffers,
  745.         int offset
  746.     ) {
  747.       glDeleteRenderbuffers1(
  748.             n,
  749.             renderbuffers,
  750.             offset
  751.         );
  752.     }  
  753. /**
  754.  * C function void glDeleteRenderbuffers ( GLsizei n, const GLuint *renderbuffers )
  755.  * @param n
  756.  * @param renderbuffers
  757.  */
  758.     public static void glDeleteRenderbuffers(
  759.         int n,
  760.         java.nio.IntBuffer renderbuffers
  761.       ) {
  762.         glDeleteRenderbuffers2(
  763.             n,
  764.             renderbuffers
  765.         );
  766.       }  
  767.     static native void glDeleteRenderbuffers1(
  768.         int n,
  769.         int[] renderbuffers,
  770.         int offset
  771.     );
  772.     static native void glDeleteRenderbuffers2(
  773.         int n,
  774.         java.nio.IntBuffer renderbuffers
  775.     );
  776. /**
  777.  * C function void glDeleteShader ( GLuint shader )
  778.  * @param shader
  779.  */
  780.     public static native void glDeleteShader(
  781.         int shader
  782.     );
  783. /**
  784.  * C function void glDeleteTextures ( GLsizei n, const GLuint *textures )
  785.  * @param n
  786.  * @param textures
  787.  * @param offset
  788.  */
  789.     public static void glDeleteTextures(
  790.         int n,
  791.         int[] textures,
  792.         int offset
  793.     ) {
  794.       glDeleteTextures1(
  795.             n,
  796.             textures,
  797.             offset
  798.         );
  799.     }  
  800. /**
  801.  * C function void glDeleteTextures ( GLsizei n, const GLuint *textures )
  802.  * @param n
  803.  * @param textures
  804.  */
  805.     public static void glDeleteTextures(
  806.         int n,
  807.         java.nio.IntBuffer textures
  808.     ) {
  809.       glDeleteTextures2(
  810.             n,
  811.             textures
  812.         );
  813.     }
  814.     static native void glDeleteTextures1(
  815.         int n,
  816.         int[] textures,
  817.         int offset
  818.     );
  819.     static native void glDeleteTextures2(
  820.         int n,
  821.         java.nio.IntBuffer textures
  822.     );
  823. /**
  824.  * C function void glDepthFunc ( GLenum func )
  825.  * @param func
  826.  */
  827.     public static native void glDepthFunc(
  828.         int func
  829.     );
  830. /**
  831.  * C function void glDepthMask ( GLboolean flag )
  832.  * @param flag
  833.  */
  834.     public static native void glDepthMask(
  835.         boolean flag
  836.     );
  837. /**
  838.  * C function void glDepthRangef ( GLclampf zNear, GLclampf zFar )
  839.  * @param zNear
  840.  * @param zFar
  841.  */
  842.     public static native void glDepthRangef(
  843.         float zNear,
  844.         float zFar
  845.     );
  846. /**
  847.  * C function void glDetachShader ( GLuint program, GLuint shader )
  848.  * @param program
  849.  * @param shader
  850.  */
  851.     public static native void glDetachShader(
  852.         int program,
  853.         int shader
  854.     );
  855. /**
  856.  * C function void glDisable ( GLenum cap )
  857.  * @param cap
  858.  */
  859.     public static native void glDisable(
  860.         int cap
  861.     );
  862. /**
  863.  * C function void glDisableVertexAttribArray ( GLuint index )
  864.  * @param index
  865.  */
  866.     public static native void glDisableVertexAttribArray(
  867.         int index
  868.     );
  869. /**
  870.  * C function void glDrawArrays ( GLenum mode, GLint first, GLsizei count )
  871.  * @param mode
  872.  * @param first
  873.  * @param count
  874.  */
  875.     public static native void glDrawArrays(
  876.         int mode,
  877.         int first,
  878.         int count
  879.     );
  880. /**
  881.  * C function void glDrawElements ( GLenum mode, GLsizei count, GLenum type, GLint offset )
  882.  * @param mode
  883.  * @param count
  884.  * @param type
  885.  * @param offset
  886.  */
  887.     public static void glDrawElements(
  888.         int mode,
  889.         int count,
  890.         int type,
  891.         int offset
  892.     ) {
  893.       glDrawElements1(
  894.             mode,
  895.             count,
  896.             type,
  897.             offset
  898.       );
  899. }
  900. /**
  901.  * C function void glDrawElements ( GLenum mode, GLsizei count, GLenum type, const GLvoid *indices )
  902.  * @param mode
  903.  * @param count
  904.  * @param type
  905.  * @param indices
  906.  */
  907.     public static void glDrawElements(
  908.         int mode,
  909.         int count,
  910.         int type,
  911.         java.nio.Buffer indices
  912.     ) {
  913.       glDrawElements2(
  914.             mode,
  915.             count,
  916.             type,
  917.             indices
  918.         );
  919.     }
  920.     static native void glDrawElements1(
  921.         int mode,
  922.         int count,
  923.         int type,
  924.         int offset
  925.     );
  926.     static native void glDrawElements2(
  927.         int mode,
  928.         int count,
  929.         int type,
  930.         java.nio.Buffer indices
  931.     );
  932. /**
  933.  * C function void glEnable ( GLenum cap )
  934.  * @param cap
  935.  */
  936.     public static native void glEnable(
  937.         int cap
  938.     );
  939. /**
  940.  * C function void glEnableVertexAttribArray ( GLuint index )
  941.  * @param index
  942.  */
  943.     public static native void glEnableVertexAttribArray(
  944.         int index
  945.     );
  946. /**
  947.  * C function void glFinish ( void )
  948.  */
  949.     public static native void glFinish(
  950.     );
  951. /**
  952.  * C function void glFlush ( void )
  953.  */
  954.     public static native void glFlush(
  955.     );
  956. /**
  957.  * C function void glFramebufferRenderbuffer ( GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer )
  958.  * @param target
  959.  * @param attachment
  960.  * @param renderbuffertarget
  961.  * @param renderbuffer
  962.  */
  963.     public static native void glFramebufferRenderbuffer(
  964.         int target,
  965.         int attachment,
  966.         int renderbuffertarget,
  967.         int renderbuffer
  968.     );
  969. /**
  970.  * C function void glFramebufferTexture2D ( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level )
  971.  * @param target
  972.  * @param attachment
  973.  * @param textarget
  974.  * @param texture
  975.  * @param level
  976.  */
  977.     public static native void glFramebufferTexture2D(
  978.         int target,
  979.         int attachment,
  980.         int textarget,
  981.         int texture,
  982.         int level
  983.     );
  984. /**
  985.  * C function void glFrontFace ( GLenum mode )
  986.  * @param mode
  987.  */
  988.     public static native void glFrontFace(
  989.         int mode
  990.     );
  991. /**
  992.  * C function void glGenBuffers ( GLsizei n, GLuint *buffers )
  993.  * @param n
  994.  * @param buffers
  995.  * @param offset
  996.  */
  997.     public static void glGenBuffers(
  998.         int n,
  999.         int[] buffers,
  1000.         int offset
  1001.     ) {
  1002.       glGenBuffers1(
  1003.             n,
  1004.             buffers,
  1005.             offset
  1006.         );
  1007.     }
  1008. /**
  1009.  * C function void glGenBuffers ( GLsizei n, GLuint *buffers )
  1010.  * @param n
  1011.  * @param buffers
  1012.  */
  1013.     public static void glGenBuffers(
  1014.         int n,
  1015.         java.nio.IntBuffer buffers
  1016.     ) {
  1017.       glGenBuffers2(
  1018.             n,
  1019.             buffers
  1020.       );
  1021.     }  
  1022.     static native void glGenBuffers1(
  1023.         int n,
  1024.         int[] buffers,
  1025.         int offset
  1026.     );
  1027.     static native void glGenBuffers2(
  1028.         int n,
  1029.         java.nio.IntBuffer buffers
  1030.     );
  1031. /**
  1032.  * C function void glGenerateMipmap ( GLenum target )
  1033.  * @param target
  1034.  */
  1035.     public static native void glGenerateMipmap(
  1036.         int target
  1037.     );
  1038. /**
  1039.  * C function void glGenFramebuffers ( GLsizei n, GLuint *framebuffers )
  1040.  * @param n
  1041.  * @param framebuffers
  1042.  * @param offset
  1043.  */
  1044.     public static void glGenFramebuffers(
  1045.         int n,
  1046.         int[] framebuffers,
  1047.         int offset
  1048.     ) {
  1049.       glGenFramebuffers1(
  1050.             n,
  1051.             framebuffers,
  1052.             offset
  1053.         );
  1054.     }
  1055. /**
  1056.  * C function void glGenFramebuffers ( GLsizei n, GLuint *framebuffers )
  1057.  * @param n
  1058.  * @param framebuffers
  1059.  */
  1060.     public static void glGenFramebuffers(
  1061.         int n,
  1062.         java.nio.IntBuffer framebuffers
  1063.     ) {
  1064.       glGenFramebuffers2(
  1065.             n,
  1066.             framebuffers
  1067.         );
  1068.     }  
  1069.     static native void glGenFramebuffers1(
  1070.         int n,
  1071.         int[] framebuffers,
  1072.         int offset
  1073.     );
  1074.     static native void glGenFramebuffers2(
  1075.         int n,
  1076.         java.nio.IntBuffer framebuffers
  1077.     );
  1078. /**
  1079.  * C function void glGenRenderbuffers ( GLsizei n, GLuint *renderbuffers )
  1080.  * @param n
  1081.  * @param renderbuffers
  1082.  * @param offset
  1083.  */
  1084.     public static void glGenRenderbuffers(
  1085.         int n,
  1086.         int[] renderbuffers,
  1087.         int offset
  1088.     ) {
  1089.       glGenRenderbuffers1(
  1090.             n,
  1091.             renderbuffers,
  1092.             offset
  1093.       );
  1094.     }
  1095. /**
  1096.  * C function void glGenRenderbuffers ( GLsizei n, GLuint *renderbuffers )
  1097.  * @param n
  1098.  * @param renderbuffers
  1099.  */
  1100.     public static void glGenRenderbuffers(
  1101.         int n,
  1102.         java.nio.IntBuffer renderbuffers
  1103.     ) {
  1104.       glGenRenderbuffers2(
  1105.             n,
  1106.             renderbuffers
  1107.       );
  1108.     }  
  1109.     static native void glGenRenderbuffers1(
  1110.         int n,
  1111.         int[] renderbuffers,
  1112.         int offset
  1113.     );
  1114.     static native void glGenRenderbuffers2(
  1115.         int n,
  1116.         java.nio.IntBuffer renderbuffers
  1117.     );
  1118. /**
  1119.  * C function void glGenTextures ( GLsizei n, GLuint *textures )
  1120.  * @param n
  1121.  * @param textures
  1122.  * @param offset
  1123.  */
  1124.     public static void glGenTextures(int n,int[] textures,int offset) {
  1125.       glGenTextures1(n,textures,offset);
  1126.     }
  1127. /**
  1128.  * C function void glGenTextures ( GLsizei n, GLuint *textures )
  1129.  * @param n
  1130.  * @param textures
  1131.  */
  1132.     public static void glGenTextures(int n,java.nio.IntBuffer textures) {
  1133.       glGenTextures2(n,textures);
  1134.     }  
  1135.     static native void glGenTextures1(
  1136.         int n,
  1137.         int[] textures,
  1138.         int offset
  1139.     );
  1140.     static native void glGenTextures2(
  1141.         int n,
  1142.         java.nio.IntBuffer textures
  1143.     );
  1144. /**
  1145.  * C function void glGetActiveAttrib ( GLuint program, GLuint index, GLsizei bufsize, GLsizei *length, GLint *size, GLenum *type, char *name )
  1146.  * @param program
  1147.  * @param index
  1148.  * @param bufsize
  1149.  * @param length
  1150.  * @param lengthOffset
  1151.  * @param size
  1152.  * @param sizeOffset
  1153.  * @param type
  1154.  * @param typeOffset
  1155.  * @param name
  1156.  * @param nameOffset
  1157.  */
  1158.     public static void glGetActiveAttrib(
  1159.         int program,
  1160.         int index,
  1161.         int bufsize,
  1162.         int[] length,
  1163.         int lengthOffset,
  1164.         int[] size,
  1165.         int sizeOffset,
  1166.         int[] type,
  1167.         int typeOffset,
  1168.         byte[] name,
  1169.         int nameOffset
  1170.     ) {
  1171.       glGetActiveAttrib1(
  1172.             program,
  1173.             index,
  1174.             bufsize,
  1175.             length,
  1176.             lengthOffset,
  1177.             size,
  1178.             sizeOffset,
  1179.             type,
  1180.             typeOffset,
  1181.             name,
  1182.             nameOffset
  1183.       );
  1184.    }
  1185. /**
  1186.  * C function void glGetActiveAttrib ( GLuint program, GLuint index, GLsizei bufsize, GLsizei *length, GLint *size, GLenum *type, char *name )
  1187.  * @param program
  1188.  * @param index
  1189.  * @param bufsize
  1190.  * @param length
  1191.  * @param size
  1192.  * @param type
  1193.  * @param name
  1194.  */
  1195.     public static void glGetActiveAttrib(
  1196.         int program,
  1197.         int index,
  1198.         int bufsize,
  1199.         java.nio.IntBuffer length,
  1200.         java.nio.IntBuffer size,
  1201.         java.nio.IntBuffer type,
  1202.         java.nio.ByteBuffer name
  1203.     ) {
  1204.       glGetActiveAttrib2(
  1205.             program,
  1206.             index,
  1207.             bufsize,
  1208.             length,
  1209.             size,
  1210.             type,
  1211.             name
  1212.         );
  1213.     }
  1214.     static native void glGetActiveAttrib1(
  1215.         int program,
  1216.         int index,
  1217.         int bufsize,
  1218.         int[] length,
  1219.         int lengthOffset,
  1220.         int[] size,
  1221.         int sizeOffset,
  1222.         int[] type,
  1223.         int typeOffset,
  1224.         byte[] name,
  1225.         int nameOffset
  1226.     );
  1227.     static native void glGetActiveAttrib2(
  1228.         int program,
  1229.         int index,
  1230.         int bufsize,
  1231.         java.nio.IntBuffer length,
  1232.         java.nio.IntBuffer size,
  1233.         java.nio.IntBuffer type,
  1234.         java.nio.ByteBuffer name
  1235.     );
  1236. /**
  1237.  * C function void glGetActiveUniform ( GLuint program, GLuint index, GLsizei bufsize, GLsizei *length, GLint *size, GLenum *type, char *name )
  1238.  * @param program
  1239.  * @param index
  1240.  * @param bufsize
  1241.  * @param length
  1242.  * @param lengthOffset
  1243.  * @param size
  1244.  * @param sizeOffset
  1245.  * @param type
  1246.  * @param typeOffset
  1247.  * @param name
  1248.  * @param nameOffset
  1249.  */
  1250.     public static void glGetActiveUniform(
  1251.         int program,
  1252.         int index,
  1253.         int bufsize,
  1254.         int[] length,
  1255.         int lengthOffset,
  1256.         int[] size,
  1257.         int sizeOffset,
  1258.         int[] type,
  1259.         int typeOffset,
  1260.         byte[] name,
  1261.         int nameOffset
  1262.     ) {
  1263.       glGetActiveUniform1(
  1264.             program,
  1265.             index,
  1266.             bufsize,
  1267.             length,
  1268.             lengthOffset,
  1269.             size,
  1270.             sizeOffset,
  1271.             type,
  1272.             typeOffset,
  1273.             name,
  1274.             nameOffset
  1275.       );
  1276.     }  
  1277. /**
  1278.  * C function void glGetActiveUniform ( GLuint program, GLuint index, GLsizei bufsize, GLsizei *length, GLint *size, GLenum *type, char *name )
  1279.  * @param program
  1280.  * @param index
  1281.  * @param bufsize
  1282.  * @param length
  1283.  * @param size
  1284.  * @param type
  1285.  * @param name
  1286.  */
  1287.     public static void glGetActiveUniform(
  1288.         int program,
  1289.         int index,
  1290.         int bufsize,
  1291.         java.nio.IntBuffer length,
  1292.         java.nio.IntBuffer size,
  1293.         java.nio.IntBuffer type,
  1294.         java.nio.ByteBuffer name
  1295.     ) {
  1296.       glGetActiveUniform2(
  1297.             program,
  1298.             index,
  1299.             bufsize,
  1300.             length,
  1301.             size,
  1302.             type,
  1303.             name
  1304.        );
  1305.     }
  1306.     static native void glGetActiveUniform1(
  1307.         int program,
  1308.         int index,
  1309.         int bufsize,
  1310.         int[] length,
  1311.         int lengthOffset,
  1312.         int[] size,
  1313.         int sizeOffset,
  1314.         int[] type,
  1315.         int typeOffset,
  1316.         byte[] name,
  1317.         int nameOffset
  1318.     );
  1319.     static native void glGetActiveUniform2(
  1320.         int program,
  1321.         int index,
  1322.         int bufsize,
  1323.         java.nio.IntBuffer length,
  1324.         java.nio.IntBuffer size,
  1325.         java.nio.IntBuffer type,
  1326.         java.nio.ByteBuffer name
  1327.     );
  1328. /**
  1329.  * C function void glGetAttachedShaders ( GLuint program, GLsizei maxcount, GLsizei *count, GLuint *shaders )
  1330.  * @param program
  1331.  * @param maxcount
  1332.  * @param count
  1333.  * @param countOffset
  1334.  * @param shaders
  1335.  * @param shadersOffset
  1336.  */
  1337.     public static void glGetAttachedShaders(
  1338.         int program,
  1339.         int maxcount,
  1340.         int[] count,
  1341.         int countOffset,
  1342.         int[] shaders,
  1343.         int shadersOffset
  1344.     ) {
  1345.       glGetAttachedShaders1(
  1346.             program,
  1347.             maxcount,
  1348.             count,
  1349.             countOffset,
  1350.             shaders,
  1351.             shadersOffset
  1352.       );
  1353.     }  
  1354. /**
  1355.  * C function void glGetAttachedShaders ( GLuint program, GLsizei maxcount, GLsizei *count, GLuint *shaders )
  1356.  * @param program
  1357.  * @param maxcount
  1358.  * @param count
  1359.  * @param shaders
  1360.  */
  1361.     public static void glGetAttachedShaders(
  1362.         int program,
  1363.         int maxcount,
  1364.         java.nio.IntBuffer count,
  1365.         java.nio.IntBuffer shaders
  1366.     ) {
  1367.       glGetAttachedShaders2(
  1368.             program,
  1369.             maxcount,
  1370.             count,
  1371.             shaders
  1372.       );
  1373.     }  
  1374.     static native void glGetAttachedShaders1(
  1375.         int program,
  1376.         int maxcount,
  1377.         int[] count,
  1378.         int countOffset,
  1379.         int[] shaders,
  1380.         int shadersOffset
  1381.     );
  1382.     static native void glGetAttachedShaders2(
  1383.         int program,
  1384.         int maxcount,
  1385.         java.nio.IntBuffer count,
  1386.         java.nio.IntBuffer shaders
  1387.     );
  1388. /**
  1389.  * C function int glGetAttribLocation ( GLuint program, const char *name )
  1390.  * @param program
  1391.  * @param name
  1392.  * @return
  1393.  */
  1394.     public static native int glGetAttribLocation(
  1395.         int program,
  1396.         String name
  1397.     );
  1398. /**
  1399.  * C function void glGetBooleanv ( GLenum pname, GLboolean *params )
  1400.  * @param pname
  1401.  * @param params
  1402.  * @param offset
  1403.  */
  1404.     public static void glGetBooleanv(
  1405.         int pname,
  1406.         boolean[] params,
  1407.         int offset
  1408.     ) {
  1409.       glGetBooleanv1(
  1410.             pname,
  1411.             params,
  1412.             offset
  1413.       );
  1414.     }
  1415. /**
  1416.  * C function void glGetBooleanv ( GLenum pname, GLboolean *params )
  1417.  * @param pname
  1418.  * @param params
  1419.  */
  1420.     public static void glGetBooleanv(
  1421.         int pname,
  1422.         java.nio.IntBuffer params
  1423.     ) {
  1424.       glGetBooleanv2(
  1425.             pname,
  1426.             params
  1427.       );
  1428.     }  
  1429.     static native void glGetBooleanv1(
  1430.         int pname,
  1431.         boolean[] params,
  1432.         int offset
  1433.     );
  1434.     static native void glGetBooleanv2(
  1435.         int pname,
  1436.         java.nio.IntBuffer params
  1437.     );
  1438. /**
  1439.  * C function void glGetBufferParameteriv ( GLenum target, GLenum pname, GLint *params )
  1440.  * @param target
  1441.  * @param pname
  1442.  * @param params
  1443.  * @param offset
  1444.  */
  1445.     public static void glGetBufferParameteriv(
  1446.         int target,
  1447.         int pname,
  1448.         int[] params,
  1449.         int offset
  1450.     ) {
  1451.       glGetBufferParameteriv1(
  1452.             target,
  1453.             pname,
  1454.             params,
  1455.             offset
  1456.       );
  1457.     }
  1458. /**
  1459.  * C function void glGetBufferParameteriv ( GLenum target, GLenum pname, GLint *params )
  1460.  * @param target
  1461.  * @param pname
  1462.  * @param params
  1463.  */
  1464.     public static void glGetBufferParameteriv(
  1465.         int target,
  1466.         int pname,
  1467.         java.nio.IntBuffer params
  1468.     ) {
  1469.       glGetBufferParameteriv2(
  1470.             target,
  1471.             pname,
  1472.             params
  1473.       );
  1474.     }
  1475.     static native void glGetBufferParameteriv1(
  1476.         int target,
  1477.         int pname,
  1478.         int[] params,
  1479.         int offset
  1480.     );
  1481.     static native void glGetBufferParameteriv2(
  1482.         int target,
  1483.         int pname,
  1484.         java.nio.IntBuffer params
  1485.     );
  1486. /**
  1487.  * C function GLenum glGetError ( void )
  1488.  * @return
  1489.  */
  1490.     public static native int glGetError(
  1491.     );
  1492. /**
  1493.  * C function void glGetFloatv ( GLenum pname, GLfloat *params )
  1494.  * @param pname
  1495.  * @param params
  1496.  * @param offset
  1497.  */
  1498.     public static void glGetFloatv(
  1499.         int pname,
  1500.         float[] params,
  1501.         int offset
  1502.     ) {
  1503.       glGetFloatv1(
  1504.             pname,
  1505.             params,
  1506.             offset
  1507.       );
  1508.     }
  1509. /**
  1510.  * C function void glGetFloatv ( GLenum pname, GLfloat *params )
  1511.  * @param pname
  1512.  * @param params
  1513.  */
  1514.     public static void glGetFloatv(
  1515.         int pname,
  1516.         java.nio.FloatBuffer params
  1517.     ) {
  1518.       glGetFloatv2(
  1519.             pname,
  1520.             params
  1521.       );
  1522.     }
  1523.     static native void glGetFloatv1(
  1524.         int pname,
  1525.         float[] params,
  1526.         int offset
  1527.     );
  1528.     static native void glGetFloatv2(
  1529.         int pname,
  1530.         java.nio.FloatBuffer params
  1531.     );
  1532. /**
  1533.  * C function void glGetFramebufferAttachmentParameteriv ( GLenum target, GLenum attachment, GLenum pname, GLint *params )
  1534.  * @param target
  1535.  * @param attachment
  1536.  * @param pname
  1537.  * @param params
  1538.  * @param offset
  1539.  */
  1540.     public static void glGetFramebufferAttachmentParameteriv(
  1541.         int target,
  1542.         int attachment,
  1543.         int pname,
  1544.         int[] params,
  1545.         int offset
  1546.     ) {
  1547.     glGetFramebufferAttachmentParameteriv1(
  1548.             target,
  1549.             attachment,
  1550.             pname,
  1551.             params,
  1552.             offset
  1553.       );
  1554.     }
  1555. /**
  1556.  * C function void glGetFramebufferAttachmentParameteriv ( GLenum target, GLenum attachment, GLenum pname, GLint *params )
  1557.  * @param target
  1558.  * @param attachment
  1559.  * @param pname
  1560.  * @param params
  1561.  */
  1562.     public static void glGetFramebufferAttachmentParameteriv(
  1563.         int target,
  1564.         int attachment,
  1565.         int pname,
  1566.         java.nio.IntBuffer params
  1567.     ) {
  1568.       glGetFramebufferAttachmentParameteriv2(
  1569.             target,
  1570.             attachment,
  1571.             pname,
  1572.             params
  1573.       );
  1574.     }
  1575.     static native void glGetFramebufferAttachmentParameteriv1(
  1576.         int target,
  1577.         int attachment,
  1578.         int pname,
  1579.         int[] params,
  1580.         int offset
  1581.     );
  1582.     static native void glGetFramebufferAttachmentParameteriv2(
  1583.         int target,
  1584.         int attachment,
  1585.         int pname,
  1586.         java.nio.IntBuffer params
  1587.     );
  1588. /**
  1589.  * C function void glGetIntegerv ( GLenum pname, GLint *params )
  1590.  * @param pname
  1591.  * @param params
  1592.  * @param offset
  1593.  */
  1594.     public static void glGetIntegerv(
  1595.         int pname,
  1596.         int[] params,
  1597.         int offset
  1598.     ) {
  1599.       glGetIntegerv1(
  1600.             pname,
  1601.             params,
  1602.             offset
  1603.       );
  1604.     }
  1605. /**
  1606.  * C function void glGetIntegerv ( GLenum pname, GLint *params )
  1607.  * @param pname
  1608.  * @param params
  1609.  */
  1610.     public static void glGetIntegerv(
  1611.         int pname,
  1612.         java.nio.IntBuffer params
  1613.     ) {
  1614.       glGetIntegerv2(
  1615.             pname,
  1616.             params
  1617.       );
  1618.     }  
  1619.     static native void glGetIntegerv1(
  1620.         int pname,
  1621.         int[] params,
  1622.         int offset
  1623.     );
  1624.     static native void glGetIntegerv2(
  1625.         int pname,
  1626.         java.nio.IntBuffer params
  1627.     );
  1628. /**
  1629.  * C function void glGetProgramiv ( GLuint program, GLenum pname, GLint *params )
  1630.  * @param program
  1631.  * @param pname
  1632.  * @param params
  1633.  * @param offset
  1634.  */
  1635.     public static void glGetProgramiv(
  1636.         int program,
  1637.         int pname,
  1638.         int[] params,
  1639.         int offset
  1640.     ) {
  1641.       glGetProgramiv1(
  1642.             program,
  1643.             pname,
  1644.             params,
  1645.             offset
  1646.       );
  1647.     }
  1648. /**
  1649.  * C function void glGetProgramiv ( GLuint program, GLenum pname, GLint *params )
  1650.  * @param program
  1651.  * @param pname
  1652.  * @param params
  1653.  */
  1654.     public static void glGetProgramiv(
  1655.         int program,
  1656.         int pname,
  1657.         java.nio.IntBuffer params
  1658.     ) {
  1659.       glGetProgramiv2(
  1660.             program,
  1661.             pname,
  1662.             params
  1663.       );
  1664.     }
  1665.     static native void glGetProgramiv1(
  1666.         int program,
  1667.         int pname,
  1668.         int[] params,
  1669.         int offset
  1670.     );
  1671.     static native void glGetProgramiv2(
  1672.         int program,
  1673.         int pname,
  1674.         java.nio.IntBuffer params
  1675.     );
  1676. /**
  1677.  * C function void glGetProgramInfoLog( GLuint program, GLsizei maxLength, GLsizei * length,GLchar * infoLog);
  1678.  * @param program
  1679.  * @return
  1680.  */
  1681.     public static native String glGetProgramInfoLog(
  1682.         int program
  1683.     );
  1684. /**
  1685.  * C function void glGetRenderbufferParameteriv ( GLenum target, GLenum pname, GLint *params )
  1686.  * @param target
  1687.  * @param pname
  1688.  * @param params
  1689.  * @param offset
  1690.  */
  1691.     public static void glGetRenderbufferParameteriv(
  1692.         int target,
  1693.         int pname,
  1694.         int[] params,
  1695.         int offset
  1696.     ) {
  1697.       glGetRenderbufferParameteriv1(
  1698.             target,
  1699.             pname,
  1700.             params,
  1701.             offset
  1702.       );
  1703.     }
  1704. /**
  1705.  * C function void glGetRenderbufferParameteriv ( GLenum target, GLenum pname, GLint *params )
  1706.  * @param target
  1707.  * @param pname
  1708.  * @param params
  1709.  */
  1710.     public static void glGetRenderbufferParameteriv(
  1711.         int target,
  1712.         int pname,
  1713.         java.nio.IntBuffer params
  1714.     ) {
  1715.       glGetRenderbufferParameteriv2(
  1716.             target,
  1717.             pname,
  1718.             params
  1719.       );
  1720.     }
  1721.     static native void glGetRenderbufferParameteriv1(
  1722.         int target,
  1723.         int pname,
  1724.         int[] params,
  1725.         int offset
  1726.     );
  1727.     static native void glGetRenderbufferParameteriv2(
  1728.         int target,
  1729.         int pname,
  1730.         java.nio.IntBuffer params
  1731.     );
  1732. /**
  1733.  * C function void glGetShaderiv ( GLuint shader, GLenum pname, GLint *params )
  1734.  * @param shader
  1735.  * @param pname
  1736.  * @param params
  1737.  * @param offset
  1738.  */
  1739.     public static void glGetShaderiv(
  1740.         int shader,
  1741.         int pname,
  1742.         int[] params,
  1743.         int offset
  1744.     ) {
  1745.       glGetShaderiv1(
  1746.             shader,
  1747.             pname,
  1748.             params,
  1749.             offset
  1750.       );
  1751.     }
  1752. /**
  1753.  * C function void glGetShaderiv ( GLuint shader, GLenum pname, GLint *params )
  1754.  * @param shader
  1755.  * @param pname
  1756.  * @param params
  1757.  */
  1758.     public static void glGetShaderiv(
  1759.         int shader,
  1760.         int pname,
  1761.         java.nio.IntBuffer params
  1762.     ) {
  1763.       glGetShaderiv2(
  1764.             shader,
  1765.             pname,
  1766.             params
  1767.       );
  1768.     }
  1769.     static native void glGetShaderiv1(
  1770.         int shader,
  1771.         int pname,
  1772.         int[] params,
  1773.         int offset
  1774.     );
  1775.     static native void glGetShaderiv2(
  1776.         int shader,
  1777.         int pname,
  1778.         java.nio.IntBuffer params
  1779.     );
  1780. /**
  1781.  * C function void glGetShaderInfoLog( GLuint shader, GLsizei maxLength, GLsizei * length,GLchar * infoLog);
  1782.  * @param shader
  1783.  * @return
  1784.  */
  1785.     public static native String glGetShaderInfoLog(
  1786.         int shader
  1787.     );
  1788. /**
  1789.  * C function void glGetShaderPrecisionFormat ( GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision )
  1790.  * @param shadertype
  1791.  * @param precisiontype
  1792.  * @param range
  1793.  * @param rangeOffset
  1794.  * @param precision
  1795.  * @param precisionOffset
  1796.  */
  1797.     public static void glGetShaderPrecisionFormat(
  1798.         int shadertype,
  1799.         int precisiontype,
  1800.         int[] range,
  1801.         int rangeOffset,
  1802.         int[] precision,
  1803.         int precisionOffset
  1804.     ) {
  1805.       glGetShaderPrecisionFormat1(
  1806.             shadertype,
  1807.             precisiontype,
  1808.             range,
  1809.             rangeOffset,
  1810.             precision,
  1811.             precisionOffset
  1812.       );
  1813.     }
  1814. /**
  1815.  * C function void glGetShaderPrecisionFormat ( GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision )
  1816.  * @param shadertype
  1817.  * @param precisiontype
  1818.  * @param range
  1819.  * @param precision
  1820.  */
  1821.     public static void glGetShaderPrecisionFormat(
  1822.         int shadertype,
  1823.         int precisiontype,
  1824.         java.nio.IntBuffer range,
  1825.         java.nio.IntBuffer precision
  1826.     ) {
  1827.       glGetShaderPrecisionFormat2(
  1828.             shadertype,
  1829.             precisiontype,
  1830.             range,
  1831.             precision
  1832.       );
  1833.     }
  1834.     static native void glGetShaderPrecisionFormat1(
  1835.         int shadertype,
  1836.         int precisiontype,
  1837.         int[] range,
  1838.         int rangeOffset,
  1839.         int[] precision,
  1840.         int precisionOffset
  1841.     );
  1842.     static native void glGetShaderPrecisionFormat2(
  1843.         int shadertype,
  1844.         int precisiontype,
  1845.         java.nio.IntBuffer range,
  1846.         java.nio.IntBuffer precision
  1847.     );
  1848. /**
  1849.  * C function void glGetShaderSource ( GLuint shader, GLsizei bufsize, GLsizei *length, char *source )
  1850.  * @param shader
  1851.  * @param bufsize
  1852.  * @param length
  1853.  * @param lengthOffset
  1854.  * @param source
  1855.  * @param sourceOffset
  1856.  */
  1857.     public static void glGetShaderSource(
  1858.         int shader,
  1859.         int bufsize,
  1860.         int[] length,
  1861.         int lengthOffset,
  1862.         byte[] source,
  1863.         int sourceOffset
  1864.     ) {
  1865.       glGetShaderSource1(
  1866.             shader,
  1867.             bufsize,
  1868.             length,
  1869.             lengthOffset,
  1870.             source,
  1871.             sourceOffset
  1872.       );
  1873.     }
  1874. /**
  1875.  * C function void glGetShaderSource ( GLuint shader, GLsizei bufsize, GLsizei *length, char *source )
  1876.  * @param shader
  1877.  * @param bufsize
  1878.  * @param length
  1879.  * @param source
  1880.  */
  1881.     public static void glGetShaderSource(
  1882.         int shader,
  1883.         int bufsize,
  1884.         java.nio.IntBuffer length,
  1885.         java.nio.ByteBuffer source
  1886.     ) {
  1887.       glGetShaderSource2(
  1888.             shader,
  1889.             bufsize,
  1890.             length,
  1891.             source
  1892.       );
  1893.     }
  1894.     static native void glGetShaderSource1(
  1895.         int shader,
  1896.         int bufsize,
  1897.         int[] length,
  1898.         int lengthOffset,
  1899.         byte[] source,
  1900.         int sourceOffset
  1901.     );
  1902.     static native void glGetShaderSource2(
  1903.         int shader,
  1904.         int bufsize,
  1905.         java.nio.IntBuffer length,
  1906.         java.nio.ByteBuffer source
  1907.     );
  1908. /**
  1909.  * C function const GLubyte * glGetString ( GLenum name )
  1910.  * @param name
  1911.  * @return
  1912.  */
  1913.     public static native String glGetString(
  1914.         int name
  1915.     );
  1916. /**
  1917.  * C function void glGetTexParameterfv ( GLenum target, GLenum pname, GLfloat *params )
  1918.  * @param target
  1919.  * @param pname
  1920.  * @param params
  1921.  * @param offset
  1922.  */
  1923.     public static void glGetTexParameterfv(
  1924.         int target,
  1925.         int pname,
  1926.         float[] params,
  1927.         int offset
  1928.     ) {
  1929.       glGetTexParameterfv1(
  1930.             target,
  1931.             pname,
  1932.             params,
  1933.             offset
  1934.       );
  1935.     }
  1936. /**
  1937.  * C function void glGetTexParameterfv ( GLenum target, GLenum pname, GLfloat *params )
  1938.  * @param target
  1939.  * @param pname
  1940.  * @param params
  1941.  */
  1942.     public static void glGetTexParameterfv(
  1943.         int target,
  1944.         int pname,
  1945.         java.nio.FloatBuffer params
  1946.     ) {
  1947.       glGetTexParameterfv2(
  1948.             target,
  1949.             pname,
  1950.             params
  1951.       );
  1952.     }
  1953.     static native void glGetTexParameterfv1(
  1954.         int target,
  1955.         int pname,
  1956.         float[] params,
  1957.         int offset
  1958.     );
  1959.     static native void glGetTexParameterfv2(
  1960.         int target,
  1961.         int pname,
  1962.         java.nio.FloatBuffer params
  1963.     );
  1964. /**
  1965.  * C function void glGetTexParameteriv ( GLenum target, GLenum pname, GLint *params )
  1966.  * @param target
  1967.  * @param pname
  1968.  * @param params
  1969.  * @param offset
  1970.  */
  1971.     public static void glGetTexParameteriv(
  1972.         int target,
  1973.         int pname,
  1974.         int[] params,
  1975.         int offset
  1976.     ) {
  1977.       glGetTexParameteriv1(
  1978.             target,
  1979.             pname,
  1980.             params,
  1981.             offset
  1982.       );
  1983.     }
  1984. /**
  1985.  * C function void glGetTexParameteriv ( GLenum target, GLenum pname, GLint *params )
  1986.  * @param target
  1987.  * @param pname
  1988.  * @param params
  1989.  */
  1990.     public static void glGetTexParameteriv(
  1991.         int target,
  1992.         int pname,
  1993.         java.nio.IntBuffer params
  1994.     ) {
  1995.       glGetTexParameteriv2(
  1996.             target,
  1997.             pname,
  1998.             params
  1999.       );
  2000.     }
  2001.     static native void glGetTexParameteriv1(
  2002.         int target,
  2003.         int pname,
  2004.         int[] params,
  2005.         int offset
  2006.     );
  2007.     static native void glGetTexParameteriv2(
  2008.         int target,
  2009.         int pname,
  2010.         java.nio.IntBuffer params
  2011.     );
  2012. /**
  2013.  * C function void glGetUniformfv ( GLuint program, GLint location, GLfloat *params )
  2014.  * @param program
  2015.  * @param location
  2016.  * @param params
  2017.  * @param offset
  2018.  */
  2019.     public static void glGetUniformfv(
  2020.         int program,
  2021.         int location,
  2022.         float[] params,
  2023.         int offset
  2024.     ) {
  2025.       glGetUniformfv1(
  2026.             program,
  2027.             location,
  2028.             params,
  2029.             offset
  2030.       );
  2031.     }
  2032. /**
  2033.  * C function void glGetUniformfv ( GLuint program, GLint location, GLfloat *params )
  2034.  * @param program
  2035.  * @param location
  2036.  * @param params
  2037.  */
  2038.     public static void glGetUniformfv(
  2039.         int program,
  2040.         int location,
  2041.         java.nio.FloatBuffer params
  2042.     ) {
  2043.       glGetUniformfv2(
  2044.             program,
  2045.             location,
  2046.             params
  2047.       );
  2048.     }
  2049.     static native void glGetUniformfv1(
  2050.         int program,
  2051.         int location,
  2052.         float[] params,
  2053.         int offset
  2054.     );
  2055.     static native void glGetUniformfv2(
  2056.         int program,
  2057.         int location,
  2058.         java.nio.FloatBuffer params
  2059.     );
  2060. /**
  2061.  * C function void glGetUniformiv ( GLuint program, GLint location, GLint *params )
  2062.  * @param program
  2063.  * @param location
  2064.  * @param params
  2065.  * @param offset
  2066.  */
  2067.     public static void glGetUniformiv(
  2068.         int program,
  2069.         int location,
  2070.         int[] params,
  2071.         int offset
  2072.     ) {
  2073.       glGetUniformiv1(
  2074.             program,
  2075.             location,
  2076.             params,
  2077.             offset
  2078.       );
  2079.     }
  2080. /**
  2081.  * C function void glGetUniformiv ( GLuint program, GLint location, GLint *params )
  2082.  * @param program
  2083.  * @param location
  2084.  * @param params
  2085.  */
  2086.     public static void glGetUniformiv(
  2087.         int program,
  2088.         int location,
  2089.         java.nio.IntBuffer params
  2090.     ) {
  2091.       glGetUniformiv2(
  2092.             program,
  2093.             location,
  2094.             params
  2095.       );
  2096.     }
  2097.     static native void glGetUniformiv1(
  2098.         int program,
  2099.         int location,
  2100.         int[] params,
  2101.         int offset
  2102.     );
  2103.     static native void glGetUniformiv2(
  2104.         int program,
  2105.         int location,
  2106.         java.nio.IntBuffer params
  2107.     );
  2108. /**
  2109.  * C function int glGetUniformLocation ( GLuint program, const char *name )
  2110.  * @param program
  2111.  * @param name
  2112.  * @return
  2113.  */
  2114.     public static native int glGetUniformLocation(
  2115.         int program,
  2116.         String name
  2117.     );
  2118. /**
  2119.  * C function void glGetVertexAttribfv ( GLuint index, GLenum pname, GLfloat *params )
  2120.  * @param index
  2121.  * @param pname
  2122.  * @param params
  2123.  * @param offset
  2124.  */
  2125.     public static void glGetVertexAttribfv(
  2126.         int index,
  2127.         int pname,
  2128.         float[] params,
  2129.         int offset
  2130.     ) {
  2131.       glGetVertexAttribfv1(
  2132.             index,
  2133.             pname,
  2134.             params,
  2135.             offset
  2136.       );
  2137.     }
  2138. /**
  2139.  * C function void glGetVertexAttribfv ( GLuint index, GLenum pname, GLfloat *params )
  2140.  * @param index
  2141.  * @param pname
  2142.  * @param params
  2143.  */
  2144.     public static void glGetVertexAttribfv(
  2145.         int index,
  2146.         int pname,
  2147.         java.nio.FloatBuffer params
  2148.     ) {
  2149.       glGetVertexAttribfv2(
  2150.             index,
  2151.             pname,
  2152.             params
  2153.       );
  2154.     }
  2155.     static native void glGetVertexAttribfv1(
  2156.         int index,
  2157.         int pname,
  2158.         float[] params,
  2159.         int offset
  2160.     );
  2161.     static native void glGetVertexAttribfv2(
  2162.         int index,
  2163.         int pname,
  2164.         java.nio.FloatBuffer params
  2165.     );
  2166. /**
  2167.  * C function void glGetVertexAttribiv ( GLuint index, GLenum pname, GLint *params )
  2168.  * @param index
  2169.  * @param pname
  2170.  * @param params
  2171.  * @param offset
  2172.  */
  2173.     public static void glGetVertexAttribiv(
  2174.         int index,
  2175.         int pname,
  2176.         int[] params,
  2177.         int offset
  2178.     ) {
  2179.       glGetVertexAttribiv1(
  2180.             index,
  2181.             pname,
  2182.             params,
  2183.             offset
  2184.       );
  2185.     }
  2186. /**
  2187.  * C function void glGetVertexAttribiv ( GLuint index, GLenum pname, GLint *params )
  2188.  * @param index
  2189.  * @param pname
  2190.  * @param params
  2191.  */
  2192.     public static void glGetVertexAttribiv(
  2193.         int index,
  2194.         int pname,
  2195.         java.nio.IntBuffer params
  2196.     ) {
  2197.       glGetVertexAttribiv2(
  2198.             index,
  2199.             pname,
  2200.             params
  2201.       );
  2202.     }
  2203.     static native void glGetVertexAttribiv1(
  2204.         int index,
  2205.         int pname,
  2206.         int[] params,
  2207.         int offset
  2208.     );
  2209.     static native void glGetVertexAttribiv2(
  2210.         int index,
  2211.         int pname,
  2212.         java.nio.IntBuffer params
  2213.     );
  2214. /**
  2215.  * C function void glHint ( GLenum target, GLenum mode )
  2216.  * @param target
  2217.  * @param mode
  2218.  */
  2219.     public static native void glHint(
  2220.         int target,
  2221.         int mode
  2222.     );
  2223. /**
  2224.  * C function GLboolean glIsBuffer ( GLuint buffer )
  2225.  * @param buffer
  2226.  * @return
  2227.  */
  2228.     public static native boolean glIsBuffer(
  2229.         int buffer
  2230.     );
  2231. /**
  2232.  * C function GLboolean glIsEnabled ( GLenum cap )
  2233.  * @param cap
  2234.  * @return
  2235.  */
  2236.     public static native boolean glIsEnabled(
  2237.         int cap
  2238.     );
  2239. /**
  2240.  * C function GLboolean glIsFramebuffer ( GLuint framebuffer )
  2241.  * @param framebuffer
  2242.  * @return
  2243.  */
  2244.     public static native boolean glIsFramebuffer(
  2245.         int framebuffer
  2246.     );
  2247. /**
  2248.  * C function GLboolean glIsProgram ( GLuint program )
  2249.  * @param program
  2250.  * @return
  2251.  */
  2252.     public static native boolean glIsProgram(
  2253.         int program
  2254.     );
  2255. /**
  2256.  * C function GLboolean glIsRenderbuffer ( GLuint renderbuffer )
  2257.  * @param renderbuffer
  2258.  * @return
  2259.  */
  2260.     public static native boolean glIsRenderbuffer(
  2261.         int renderbuffer
  2262.     );
  2263. /**
  2264.  * C function GLboolean glIsShader ( GLuint shader )
  2265.  * @param shader
  2266.  * @return
  2267.  */
  2268.     public static native boolean glIsShader(
  2269.         int shader
  2270.     );
  2271. /**
  2272.  * C function GLboolean glIsTexture ( GLuint texture )
  2273.  * @param texture
  2274.  * @return
  2275.  */
  2276.     public static native boolean glIsTexture(
  2277.         int texture
  2278.     );
  2279. /**
  2280.  * C function void glLineWidth ( GLfloat width )
  2281.  * @param width
  2282.  */
  2283.     public static native void glLineWidth(
  2284.         float width
  2285.     );
  2286. /**
  2287.  * C function void glLinkProgram ( GLuint program )
  2288.  * @param program
  2289.  */
  2290.     public static native void glLinkProgram(
  2291.         int program
  2292.     );
  2293. /**
  2294.  * C function void glPixelStorei ( GLenum pname, GLint param )
  2295.  * @param pname
  2296.  * @param param
  2297.  */
  2298.     public static native void glPixelStorei(
  2299.         int pname,
  2300.         int param
  2301.     );
  2302. /**
  2303.  * C function void glPolygonOffset ( GLfloat factor, GLfloat units )
  2304.  * @param factor
  2305.  * @param units
  2306.  */
  2307.     public static native void glPolygonOffset(
  2308.         float factor,
  2309.         float units
  2310.     );
  2311. /**
  2312.  * C function void glReadPixels ( GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels )
  2313.  * @param x
  2314.  * @param y
  2315.  * @param width
  2316.  * @param height
  2317.  * @param format
  2318.  * @param type
  2319.  * @param pixels
  2320.  */
  2321.     public static native void glReadPixels(
  2322.         int x,
  2323.         int y,
  2324.         int width,
  2325.         int height,
  2326.         int format,
  2327.         int type,
  2328.         java.nio.Buffer pixels
  2329.     );
  2330. /**
  2331.  * C function void glReleaseShaderCompiler ( void )
  2332.  */
  2333.     public static native void glReleaseShaderCompiler(
  2334.     );
  2335. /**
  2336.  * C function void glRenderbufferStorage ( GLenum target, GLenum internalformat, GLsizei width, GLsizei height )
  2337.  * @param target
  2338.  * @param internalformat
  2339.  * @param width
  2340.  * @param height
  2341.  */
  2342.     public static native void glRenderbufferStorage(
  2343.         int target,
  2344.         int internalformat,
  2345.         int width,
  2346.         int height
  2347.     );
  2348. /**
  2349.  * C function void glSampleCoverage ( GLclampf value, GLboolean invert )
  2350.  * @param value
  2351.  * @param invert
  2352.  */
  2353.     public static native void glSampleCoverage(
  2354.         float value,
  2355.         boolean invert
  2356.     );
  2357. /**
  2358.  * C function void glScissor ( GLint x, GLint y, GLsizei width, GLsizei height )
  2359.  * @param x
  2360.  * @param y
  2361.  * @param width
  2362.  * @param height
  2363.  */
  2364.     public static native void glScissor(
  2365.         int x,
  2366.         int y,
  2367.         int width,
  2368.         int height
  2369.     );
  2370. /**
  2371.  * C function void glShaderBinary ( GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length )
  2372.  * @param n
  2373.  * @param shaders
  2374.  * @param offset
  2375.  * @param binaryformat
  2376.  * @param binary
  2377.  * @param length
  2378.  */
  2379.     public static void glShaderBinary(
  2380.         int n,
  2381.         int[] shaders,
  2382.         int offset,
  2383.         int binaryformat,
  2384.         java.nio.Buffer binary,
  2385.         int length
  2386.     ) {
  2387.       glShaderBinary1(
  2388.             n,
  2389.             shaders,
  2390.             offset,
  2391.             binaryformat,
  2392.             binary,
  2393.             length
  2394.       );
  2395.     }
  2396. /**
  2397.  * C function void glShaderBinary ( GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length )
  2398.  * @param n
  2399.  * @param shaders
  2400.  * @param binaryformat
  2401.  * @param binary
  2402.  * @param length
  2403.  */
  2404.     public static void glShaderBinary(
  2405.         int n,
  2406.         java.nio.IntBuffer shaders,
  2407.         int binaryformat,
  2408.         java.nio.Buffer binary,
  2409.         int length
  2410.     ) {
  2411.       glShaderBinary2(
  2412.             n,
  2413.             shaders,
  2414.             binaryformat,
  2415.             binary,
  2416.             length
  2417.       );
  2418.     }
  2419.     static native void glShaderBinary1(
  2420.         int n,
  2421.         int[] shaders,
  2422.         int offset,
  2423.         int binaryformat,
  2424.         java.nio.Buffer binary,
  2425.         int length
  2426.     );
  2427.     static native void glShaderBinary2(
  2428.         int n,
  2429.         java.nio.IntBuffer shaders,
  2430.         int binaryformat,
  2431.         java.nio.Buffer binary,
  2432.         int length
  2433.     );
  2434. /**
  2435.  * C function void glShaderSource ( GLuint shader, GLsizei count, const GLchar ** string, const GLint* length )
  2436.  * @param shader
  2437.  * @param string
  2438.  */
  2439.     public static native void glShaderSource(
  2440.         int shader,
  2441.         String string
  2442.     );
  2443. /**
  2444.  * C function void glStencilFunc ( GLenum func, GLint ref, GLuint mask )
  2445.  * @param func
  2446.  * @param ref
  2447.  * @param mask
  2448.  */
  2449.     public static native void glStencilFunc(
  2450.         int func,
  2451.         int ref,
  2452.         int mask
  2453.     );
  2454. /**
  2455.  * C function void glStencilFuncSeparate ( GLenum face, GLenum func, GLint ref, GLuint mask )
  2456.  * @param face
  2457.  * @param func
  2458.  * @param ref
  2459.  * @param mask
  2460.  */
  2461.     public static native void glStencilFuncSeparate(
  2462.         int face,
  2463.         int func,
  2464.         int ref,
  2465.         int mask
  2466.     );
  2467. /**
  2468.  * C function void glStencilMask ( GLuint mask )
  2469.  * @param mask
  2470.  */
  2471.     public static native void glStencilMask(
  2472.         int mask
  2473.     );
  2474. /**
  2475.  * C function void glStencilMaskSeparate ( GLenum face, GLuint mask )
  2476.  * @param face
  2477.  * @param mask
  2478.  */
  2479.     public static native void glStencilMaskSeparate(
  2480.         int face,
  2481.         int mask
  2482.     );
  2483. /**
  2484.  * C function void glStencilOp ( GLenum fail, GLenum zfail, GLenum zpass )
  2485.  * @param fail
  2486.  * @param zfail
  2487.  * @param zpass
  2488.  */
  2489.     public static native void glStencilOp(
  2490.         int fail,
  2491.         int zfail,
  2492.         int zpass
  2493.     );
  2494. /**
  2495.  * C function void glStencilOpSeparate ( GLenum face, GLenum fail, GLenum zfail, GLenum zpass )
  2496.  * @param face
  2497.  * @param fail
  2498.  * @param zfail
  2499.  * @param zpass
  2500.  */
  2501.     public static native void glStencilOpSeparate(
  2502.         int face,
  2503.         int fail,
  2504.         int zfail,
  2505.         int zpass
  2506.     );
  2507. /**
  2508.  * C function void glTexImage2D ( GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels )
  2509.  * @param target
  2510.  * @param level
  2511.  * @param internalformat
  2512.  * @param width
  2513.  * @param height
  2514.  * @param border
  2515.  * @param format
  2516.  * @param type
  2517.  * @param pixels
  2518.  */
  2519.     public static native void glTexImage2D(
  2520.         int target,
  2521.         int level,
  2522.         int internalformat,
  2523.         int width,
  2524.         int height,
  2525.         int border,
  2526.         int format,
  2527.         int type,
  2528.         java.nio.Buffer pixels
  2529.     );
  2530. /**
  2531.  * C function void glTexParameterf ( GLenum target, GLenum pname, GLfloat param )
  2532.  * @param target
  2533.  * @param pname
  2534.  * @param param
  2535.  */
  2536.     public static native void glTexParameterf(
  2537.         int target,
  2538.         int pname,
  2539.         float param
  2540.     );
  2541. /**
  2542.  * C function void glTexParameterfv ( GLenum target, GLenum pname, const GLfloat *params )
  2543.  * @param target
  2544.  * @param pname
  2545.  * @param params
  2546.  * @param offset
  2547.  */
  2548.     public static void glTexParameterfv(
  2549.         int target,
  2550.         int pname,
  2551.         float[] params,
  2552.         int offset
  2553.     ) {
  2554.       glTexParameterfv1(
  2555.             target,
  2556.             pname,
  2557.             params,
  2558.             offset
  2559.       );
  2560.     }
  2561. /**
  2562.  * C function void glTexParameterfv ( GLenum target, GLenum pname, const GLfloat *params )
  2563.  * @param target
  2564.  * @param pname
  2565.  * @param params
  2566.  */
  2567.     public static void glTexParameterfv(
  2568.         int target,
  2569.         int pname,
  2570.         java.nio.FloatBuffer params
  2571.     ) {
  2572.       glTexParameterfv2(
  2573.             target,
  2574.             pname,
  2575.             params
  2576.       );
  2577.     }
  2578.     static native void glTexParameterfv1(
  2579.         int target,
  2580.         int pname,
  2581.         float[] params,
  2582.         int offset
  2583.     );
  2584.     static native void glTexParameterfv2(
  2585.         int target,
  2586.         int pname,
  2587.         java.nio.FloatBuffer params
  2588.     );
  2589. /**
  2590.  * C function void glTexParameteri ( GLenum target, GLenum pname, GLint param )
  2591.  * @param target
  2592.  * @param pname
  2593.  * @param param
  2594.  */
  2595.     public static native void glTexParameteri(
  2596.         int target,
  2597.         int pname,
  2598.         int param
  2599.     );
  2600. /**
  2601.  * C function void glTexParameteriv ( GLenum target, GLenum pname, const GLint *params )
  2602.  * @param target
  2603.  * @param pname
  2604.  * @param params
  2605.  * @param offset
  2606.  */
  2607.     public static void glTexParameteriv(
  2608.         int target,
  2609.         int pname,
  2610.         int[] params,
  2611.         int offset
  2612.     ) {
  2613.       glTexParameteriv1(
  2614.             target,
  2615.             pname,
  2616.             params,
  2617.             offset
  2618.       );
  2619.     }  
  2620. /**
  2621.  * C function void glTexParameteriv ( GLenum target, GLenum pname, const GLint *params )
  2622.  * @param target
  2623.  * @param pname
  2624.  * @param params
  2625.  */
  2626.     public static void glTexParameteriv(
  2627.         int target,
  2628.         int pname,
  2629.         java.nio.IntBuffer params
  2630.     ) {
  2631.       glTexParameteriv2(
  2632.             target,
  2633.             pname,
  2634.             params
  2635.       );
  2636.     }
  2637.     static native void glTexParameteriv1(
  2638.         int target,
  2639.         int pname,
  2640.         int[] params,
  2641.         int offset
  2642.     );
  2643.     static native void glTexParameteriv2(
  2644.         int target,
  2645.         int pname,
  2646.         java.nio.IntBuffer params
  2647.     );
  2648. /**
  2649.  * C function void glTexSubImage2D ( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels )
  2650.  * @param target
  2651.  * @param level
  2652.  * @param xoffset
  2653.  * @param yoffset
  2654.  * @param width
  2655.  * @param height
  2656.  * @param format
  2657.  * @param type
  2658.  * @param pixels
  2659.  */
  2660.     public static native void glTexSubImage2D(
  2661.         int target,
  2662.         int level,
  2663.         int xoffset,
  2664.         int yoffset,
  2665.         int width,
  2666.         int height,
  2667.         int format,
  2668.         int type,
  2669.         java.nio.Buffer pixels
  2670.     );
  2671. /**
  2672.  * C function void glUniform1f ( GLint location, GLfloat x )
  2673.  * @param location
  2674.  * @param x
  2675.  */
  2676.     public static native void glUniform1f(
  2677.         int location,
  2678.         float x
  2679.     );
  2680. /**
  2681.  * C function void glUniform1fv ( GLint location, GLsizei count, const GLfloat *v )
  2682.  * @param location
  2683.  * @param count
  2684.  * @param v
  2685.  * @param offset
  2686.  */
  2687.     public static void glUniform1fv(
  2688.         int location,
  2689.         int count,
  2690.         float[] v,
  2691.         int offset
  2692.     ) {
  2693.       glUniform1fv1(
  2694.             location,
  2695.             count,
  2696.             v,
  2697.             offset
  2698.       );
  2699.     }
  2700. /**
  2701.  * C function void glUniform1fv ( GLint location, GLsizei count, const GLfloat *v )
  2702.  * @param location
  2703.  * @param count
  2704.  * @param v
  2705.  */
  2706.     public static void glUniform1fv(
  2707.         int location,
  2708.         int count,
  2709.         java.nio.FloatBuffer v
  2710.     ) {
  2711.       glUniform1fv2(
  2712.             location,
  2713.             count,
  2714.             v
  2715.       );
  2716.     }
  2717.     static native void glUniform1fv1(
  2718.         int location,
  2719.         int count,
  2720.         float[] v,
  2721.         int offset
  2722.     );
  2723.     static native void glUniform1fv2(
  2724.         int location,
  2725.         int count,
  2726.         java.nio.FloatBuffer v
  2727.     );
  2728. /**
  2729.  * C function void glUniform1i ( GLint location, GLint x )
  2730.  * @param location
  2731.  * @param x
  2732.  */
  2733.     public static native void glUniform1i(
  2734.         int location,
  2735.         int x
  2736.     );
  2737. /**
  2738.  * C function void glUniform1iv ( GLint location, GLsizei count, const GLint *v )
  2739.  * @param location
  2740.  * @param count
  2741.  * @param v
  2742.  * @param offset
  2743.  */
  2744.     public static void glUniform1iv(
  2745.         int location,
  2746.         int count,
  2747.         int[] v,
  2748.         int offset
  2749.     ) {
  2750.       glUniform1iv1(
  2751.             location,
  2752.             count,
  2753.             v,
  2754.             offset
  2755.       );
  2756.     }
  2757. /**
  2758.  * C function void glUniform1iv ( GLint location, GLsizei count, const GLint *v )
  2759.  * @param location
  2760.  * @param count
  2761.  * @param v
  2762.  */
  2763.     public static void glUniform1iv(
  2764.         int location,
  2765.         int count,
  2766.         java.nio.IntBuffer v
  2767.     ) {
  2768.       glUniform1iv2(
  2769.             location,
  2770.             count,
  2771.             v
  2772.       );
  2773.     }
  2774.     static native void glUniform1iv1(
  2775.         int location,
  2776.         int count,
  2777.         int[] v,
  2778.         int offset
  2779.     );
  2780.     static native void glUniform1iv2(
  2781.         int location,
  2782.         int count,
  2783.         java.nio.IntBuffer v
  2784.     );
  2785. /**
  2786.  * C function void glUniform2f ( GLint location, GLfloat x, GLfloat y )
  2787.  * @param location
  2788.  * @param x
  2789.  * @param y
  2790.  */
  2791.     public static native void glUniform2f(
  2792.         int location,
  2793.         float x,
  2794.         float y
  2795.     );
  2796. /**
  2797.  * C function void glUniform2fv ( GLint location, GLsizei count, const GLfloat *v )
  2798.  * @param location
  2799.  * @param count
  2800.  * @param v
  2801.  * @param offset
  2802.  */
  2803.     public static void glUniform2fv(
  2804.         int location,
  2805.         int count,
  2806.         float[] v,
  2807.         int offset
  2808.     ) {
  2809.       glUniform2fv1(
  2810.             location,
  2811.             count,
  2812.             v,
  2813.             offset
  2814.       );
  2815.     }
  2816. /**
  2817.  * C function void glUniform2fv ( GLint location, GLsizei count, const GLfloat *v )
  2818.  * @param location
  2819.  * @param count
  2820.  * @param v
  2821.  */
  2822.     public static void glUniform2fv(
  2823.         int location,
  2824.         int count,
  2825.         java.nio.FloatBuffer v
  2826.     ) {
  2827.       glUniform2fv2(
  2828.             location,
  2829.             count,
  2830.             v
  2831.       );
  2832.     }
  2833.     static native void glUniform2fv1(
  2834.         int location,
  2835.         int count,
  2836.         float[] v,
  2837.         int offset
  2838.     );
  2839.     static native void glUniform2fv2(
  2840.         int location,
  2841.         int count,
  2842.         java.nio.FloatBuffer v
  2843.     );
  2844. /**
  2845.  * C function void glUniform2i ( GLint location, GLint x, GLint y )
  2846.  * @param location
  2847.  * @param x
  2848.  * @param y
  2849.  */
  2850.     public static native void glUniform2i(
  2851.         int location,
  2852.         int x,
  2853.         int y
  2854.     );
  2855. /**
  2856.  * C function void glUniform2iv ( GLint location, GLsizei count, const GLint *v )
  2857.  * @param location
  2858.  * @param count
  2859.  * @param v
  2860.  * @param offset
  2861.  */
  2862.     public static void glUniform2iv(
  2863.         int location,
  2864.         int count,
  2865.         int[] v,
  2866.         int offset
  2867.     ) {
  2868.       glUniform2iv1(
  2869.             location,
  2870.             count,
  2871.             v,
  2872.             offset
  2873.       );
  2874.     }
  2875. /**
  2876.  * C function void glUniform2iv ( GLint location, GLsizei count, const GLint *v )
  2877.  * @param location
  2878.  * @param count
  2879.  * @param v
  2880.  */
  2881.     public static void glUniform2iv(
  2882.         int location,
  2883.         int count,
  2884.         java.nio.IntBuffer v
  2885.     ) {
  2886.       glUniform2iv2(
  2887.             location,
  2888.             count,
  2889.             v
  2890.       );
  2891.     }
  2892.     static native void glUniform2iv1(
  2893.         int location,
  2894.         int count,
  2895.         int[] v,
  2896.         int offset
  2897.     );
  2898.     static native void glUniform2iv2(
  2899.         int location,
  2900.         int count,
  2901.         java.nio.IntBuffer v
  2902.     );
  2903. /**
  2904.  * C function void glUniform3f ( GLint location, GLfloat x, GLfloat y, GLfloat z )
  2905.  * @param location
  2906.  * @param x
  2907.  * @param y
  2908.  * @param z
  2909.  */
  2910.     public static native void glUniform3f(
  2911.         int location,
  2912.         float x,
  2913.         float y,
  2914.         float z
  2915.     );
  2916. /**
  2917.  * C function void glUniform3fv ( GLint location, GLsizei count, const GLfloat *v )
  2918.  * @param location
  2919.  * @param count
  2920.  * @param v
  2921.  * @param offset
  2922.  */
  2923.     public static void glUniform3fv(
  2924.         int location,
  2925.         int count,
  2926.         float[] v,
  2927.         int offset
  2928.     ) {
  2929.       glUniform3fv1(
  2930.             location,
  2931.             count,
  2932.             v,
  2933.             offset
  2934.       );
  2935.     }
  2936. /**
  2937.  * C function void glUniform3fv ( GLint location, GLsizei count, const GLfloat *v )
  2938.  * @param location
  2939.  * @param count
  2940.  * @param v
  2941.  */
  2942.     public static void glUniform3fv(
  2943.         int location,
  2944.         int count,
  2945.         java.nio.FloatBuffer v
  2946.     ) {
  2947.       glUniform3fv2(
  2948.             location,
  2949.             count,
  2950.             v
  2951.       );
  2952.     }
  2953.     static native void glUniform3fv1(
  2954.         int location,
  2955.         int count,
  2956.         float[] v,
  2957.         int offset
  2958.     );
  2959.     static native void glUniform3fv2(
  2960.         int location,
  2961.         int count,
  2962.         java.nio.FloatBuffer v
  2963.     );
  2964. /**
  2965.  * C function void glUniform3i ( GLint location, GLint x, GLint y, GLint z )
  2966.  * @param location
  2967.  * @param x
  2968.  * @param y
  2969.  * @param z
  2970.  */
  2971.     public static native void glUniform3i(
  2972.         int location,
  2973.         int x,
  2974.         int y,
  2975.         int z
  2976.     );
  2977. /**
  2978.  * C function void glUniform3iv ( GLint location, GLsizei count, const GLint *v )
  2979.  * @param location
  2980.  * @param count
  2981.  * @param v
  2982.  * @param offset
  2983.  */
  2984.     public static void glUniform3iv(
  2985.         int location,
  2986.         int count,
  2987.         int[] v,
  2988.         int offset
  2989.     ) {
  2990.       glUniform3iv1(
  2991.             location,
  2992.             count,
  2993.             v,
  2994.             offset
  2995.       );
  2996.     }
  2997. /**
  2998.  * C function void glUniform3iv ( GLint location, GLsizei count, const GLint *v )
  2999.  * @param location
  3000.  * @param count
  3001.  * @param v
  3002.  */
  3003.     public static void glUniform3iv(
  3004.         int location,
  3005.         int count,
  3006.         java.nio.IntBuffer v
  3007.     ) {
  3008.       glUniform3iv2(
  3009.             location,
  3010.             count,
  3011.             v
  3012.       );
  3013.     }
  3014.     static native void glUniform3iv1(
  3015.         int location,
  3016.         int count,
  3017.         int[] v,
  3018.         int offset
  3019.     );
  3020.     static native void glUniform3iv2(
  3021.         int location,
  3022.         int count,
  3023.         java.nio.IntBuffer v
  3024.     );
  3025. /**
  3026.  * C function void glUniform4f ( GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w )
  3027.  * @param location
  3028.  * @param x
  3029.  * @param y
  3030.  * @param z
  3031.  * @param w
  3032.  */
  3033.     public static native void glUniform4f(
  3034.         int location,
  3035.         float x,
  3036.         float y,
  3037.         float z,
  3038.         float w
  3039.     );
  3040. /**
  3041.  * C function void glUniform4fv ( GLint location, GLsizei count, const GLfloat *v )
  3042.  * @param location
  3043.  * @param count
  3044.  * @param v
  3045.  * @param offset
  3046.  */
  3047.     public static void glUniform4fv(
  3048.         int location,
  3049.         int count,
  3050.         float[] v,
  3051.         int offset
  3052.     ) {
  3053.       glUniform4fv1(
  3054.             location,
  3055.             count,
  3056.             v,
  3057.             offset
  3058.       );
  3059.     }
  3060. /**
  3061.  * C function void glUniform4fv ( GLint location, GLsizei count, const GLfloat *v )
  3062.  * @param location
  3063.  * @param count
  3064.  * @param v
  3065.  */
  3066.     public static void glUniform4fv(
  3067.         int location,
  3068.         int count,
  3069.         java.nio.FloatBuffer v
  3070.     ) {
  3071.       glUniform4fv2(
  3072.             location,
  3073.             count,
  3074.             v
  3075.       );
  3076.     }
  3077.     static native void glUniform4fv1(
  3078.         int location,
  3079.         int count,
  3080.         float[] v,
  3081.         int offset
  3082.     );
  3083.     static native void glUniform4fv2(
  3084.         int location,
  3085.         int count,
  3086.         java.nio.FloatBuffer v
  3087.     );
  3088. /**
  3089.  * C function void glUniform4i ( GLint location, GLint x, GLint y, GLint z, GLint w )
  3090.  * @param location
  3091.  * @param x
  3092.  * @param y
  3093.  * @param z
  3094.  * @param w
  3095.  */
  3096.     public static native void glUniform4i(
  3097.         int location,
  3098.         int x,
  3099.         int y,
  3100.         int z,
  3101.         int w
  3102.     );
  3103. /**
  3104.  * C function void glUniform4iv ( GLint location, GLsizei count, const GLint *v )
  3105.  * @param location
  3106.  * @param count
  3107.  * @param v
  3108.  * @param offset
  3109.  */
  3110.     public static void glUniform4iv(
  3111.         int location,
  3112.         int count,
  3113.         int[] v,
  3114.         int offset
  3115.     ) {
  3116.       glUniform4iv1(
  3117.             location,
  3118.             count,
  3119.             v,
  3120.             offset
  3121.       );
  3122.     }
  3123. /**
  3124.  * C function void glUniform4iv ( GLint location, GLsizei count, const GLint *v )
  3125.  * @param location
  3126.  * @param count
  3127.  * @param v
  3128.  */
  3129.     public static void glUniform4iv(
  3130.         int location,
  3131.         int count,
  3132.         java.nio.IntBuffer v
  3133.     ) {
  3134.       glUniform4iv2(
  3135.             location,
  3136.             count,
  3137.             v
  3138.       );
  3139.     }
  3140.     static native void glUniform4iv1(
  3141.         int location,
  3142.         int count,
  3143.         int[] v,
  3144.         int offset
  3145.     );
  3146.     static native void glUniform4iv2(
  3147.         int location,
  3148.         int count,
  3149.         java.nio.IntBuffer v
  3150.     );
  3151. /**
  3152.  * C function void glUniformMatrix2fv ( GLint location, GLsizei count, GLboolean transpose, const GLfloat *value )
  3153.  * @param location
  3154.  * @param count
  3155.  * @param transpose
  3156.  * @param value
  3157.  * @param offset
  3158.  */
  3159.     public static void glUniformMatrix2fv(
  3160.         int location,
  3161.         int count,
  3162.         boolean transpose,
  3163.         float[] value,
  3164.         int offset
  3165.     ) {
  3166.       glUniformMatrix2fv1(
  3167.             location,
  3168.             count,
  3169.             transpose,
  3170.             value,
  3171.             offset
  3172.       );
  3173.     }
  3174. /**
  3175.  * C function void glUniformMatrix2fv ( GLint location, GLsizei count, GLboolean transpose, const GLfloat *value )
  3176.  * @param location
  3177.  * @param count
  3178.  * @param transpose
  3179.  * @param value
  3180.  */
  3181.     public static void glUniformMatrix2fv(
  3182.         int location,
  3183.         int count,
  3184.         boolean transpose,
  3185.         java.nio.FloatBuffer value
  3186.     ) {
  3187.       glUniformMatrix2fv2(
  3188.             location,
  3189.             count,
  3190.             transpose,
  3191.             value
  3192.       );
  3193.     }
  3194.     static native void glUniformMatrix2fv1(
  3195.         int location,
  3196.         int count,
  3197.         boolean transpose,
  3198.         float[] value,
  3199.         int offset
  3200.     );
  3201.     static native void glUniformMatrix2fv2(
  3202.         int location,
  3203.         int count,
  3204.         boolean transpose,
  3205.         java.nio.FloatBuffer value
  3206.     );
  3207. /**
  3208.  * C function void glUniformMatrix3fv ( GLint location, GLsizei count, GLboolean transpose, const GLfloat *value )
  3209.  * @param location
  3210.  * @param count
  3211.  * @param transpose
  3212.  * @param value
  3213.  * @param offset
  3214.  */
  3215.     public static void glUniformMatrix3fv(
  3216.         int location,
  3217.         int count,
  3218.         boolean transpose,
  3219.         float[] value,
  3220.         int offset
  3221.     ) {
  3222.       glUniformMatrix3fv1(
  3223.             location,
  3224.             count,
  3225.             transpose,
  3226.             value,
  3227.             offset
  3228.       );
  3229.     }
  3230. /**
  3231.  * C function void glUniformMatrix3fv ( GLint location, GLsizei count, GLboolean transpose, const GLfloat *value )
  3232.  * @param location
  3233.  * @param count
  3234.  * @param transpose
  3235.  * @param value
  3236.  */
  3237.     public static void glUniformMatrix3fv(
  3238.         int location,
  3239.         int count,
  3240.         boolean transpose,
  3241.         java.nio.FloatBuffer value
  3242.     ) {
  3243.       glUniformMatrix3fv2(
  3244.             location,
  3245.             count,
  3246.             transpose,
  3247.             value
  3248.       );
  3249.     }
  3250.     static native void glUniformMatrix3fv1(
  3251.         int location,
  3252.         int count,
  3253.         boolean transpose,
  3254.         float[] value,
  3255.         int offset
  3256.     );
  3257.     static native void glUniformMatrix3fv2(
  3258.         int location,
  3259.         int count,
  3260.         boolean transpose,
  3261.         java.nio.FloatBuffer value
  3262.     );
  3263. /**
  3264.  * C function void glUniformMatrix4fv ( GLint location, GLsizei count, GLboolean transpose, const GLfloat *value )
  3265.  * @param location
  3266.  * @param count
  3267.  * @param transpose
  3268.  * @param value
  3269.  * @param offset
  3270.  */
  3271.     public static void glUniformMatrix4fv(
  3272.         int location,
  3273.         int count,
  3274.         boolean transpose,
  3275.         float[] value,
  3276.         int offset
  3277.     ) {
  3278.       glUniformMatrix4fv1(
  3279.             location,
  3280.             count,
  3281.             transpose,
  3282.             value,
  3283.             offset
  3284.       );
  3285.     }
  3286. /**
  3287.  * C function void glUniformMatrix4fv ( GLint location, GLsizei count, GLboolean transpose, const GLfloat *value )
  3288.  * @param location
  3289.  * @param count
  3290.  * @param transpose
  3291.  * @param value
  3292.  */
  3293.     public static void glUniformMatrix4fv(
  3294.         int location,
  3295.         int count,
  3296.         boolean transpose,
  3297.         java.nio.FloatBuffer value
  3298.     ) {
  3299.       glUniformMatrix4fv2(
  3300.             location,
  3301.             count,
  3302.             transpose,
  3303.             value
  3304.       );
  3305.     }
  3306.     static native void glUniformMatrix4fv1(
  3307.         int location,
  3308.         int count,
  3309.         boolean transpose,
  3310.         float[] value,
  3311.         int offset
  3312.     );
  3313.     static native void glUniformMatrix4fv2(
  3314.         int location,
  3315.         int count,
  3316.         boolean transpose,
  3317.         java.nio.FloatBuffer value
  3318.     );
  3319. /**
  3320.  * C function void glUseProgram ( GLuint program )
  3321.  * @param program
  3322.  */
  3323.     public static native void glUseProgram(
  3324.         int program
  3325.     );
  3326. /**
  3327.  * C function void glValidateProgram ( GLuint program )
  3328.  * @param program
  3329.  */
  3330.     public static native void glValidateProgram(
  3331.         int program
  3332.     );
  3333. /**
  3334.  * C function void glVertexAttrib1f ( GLuint indx, GLfloat x )
  3335.  * @param indx
  3336.  * @param x
  3337.  */
  3338.     public static native void glVertexAttrib1f(
  3339.         int indx,
  3340.         float x
  3341.     );
  3342. /**
  3343.  * C function void glVertexAttrib1fv ( GLuint indx, const GLfloat *values )
  3344.  * @param indx
  3345.  * @param values
  3346.  * @param offset
  3347.  */
  3348.     public static void glVertexAttrib1fv(
  3349.         int indx,
  3350.         float[] values,
  3351.         int offset
  3352.     ) {
  3353.       glVertexAttrib1fv1(
  3354.             indx,
  3355.             values,
  3356.             offset
  3357.       );
  3358.     }
  3359. /**
  3360.  * C function void glVertexAttrib1fv ( GLuint indx, const GLfloat *values )
  3361.  * @param indx
  3362.  * @param values
  3363.  */
  3364.     public static void glVertexAttrib1fv(
  3365.         int indx,
  3366.         java.nio.FloatBuffer values
  3367.     ) {
  3368.       glVertexAttrib1fv2(
  3369.             indx,
  3370.             values
  3371.       );
  3372.     }
  3373.     static native void glVertexAttrib1fv1(
  3374.         int indx,
  3375.         float[] values,
  3376.         int offset
  3377.     );
  3378.     static native void glVertexAttrib1fv2(
  3379.         int indx,
  3380.         java.nio.FloatBuffer values
  3381.     );
  3382. /**
  3383.  * C function void glVertexAttrib2f ( GLuint indx, GLfloat x, GLfloat y )
  3384.  * @param indx
  3385.  * @param x
  3386.  * @param y
  3387.  */
  3388.     public static native void glVertexAttrib2f(
  3389.         int indx,
  3390.         float x,
  3391.         float y
  3392.     );
  3393. /**
  3394.  * C function void glVertexAttrib2fv ( GLuint indx, const GLfloat *values )
  3395.  * @param indx
  3396.  * @param values
  3397.  * @param offset
  3398.  */
  3399.     public static void glVertexAttrib2fv(
  3400.         int indx,
  3401.         float[] values,
  3402.         int offset
  3403.     ) {
  3404.       glVertexAttrib2fv1(
  3405.             indx,
  3406.             values,
  3407.             offset
  3408.       );
  3409.     }
  3410. /**
  3411.  * C function void glVertexAttrib2fv ( GLuint indx, const GLfloat *values )
  3412.  * @param indx
  3413.  * @param values
  3414.  */
  3415.     public static void glVertexAttrib2fv(
  3416.         int indx,
  3417.         java.nio.FloatBuffer values
  3418.     ) {
  3419.       glVertexAttrib2fv2(
  3420.             indx,
  3421.             values
  3422.       );
  3423.     }
  3424.     static native void glVertexAttrib2fv1(
  3425.         int indx,
  3426.         float[] values,
  3427.         int offset
  3428.     );
  3429.     static native void glVertexAttrib2fv2(
  3430.         int indx,
  3431.         java.nio.FloatBuffer values
  3432.     );
  3433. /**
  3434.  * C function void glVertexAttrib3f ( GLuint indx, GLfloat x, GLfloat y, GLfloat z )
  3435.  * @param indx
  3436.  * @param x
  3437.  * @param y
  3438.  * @param z
  3439.  */
  3440.     public static native void glVertexAttrib3f(
  3441.         int indx,
  3442.         float x,
  3443.         float y,
  3444.         float z
  3445.     );
  3446. /**
  3447.  * C function void glVertexAttrib3fv ( GLuint indx, const GLfloat *values )
  3448.  * @param indx
  3449.  * @param values
  3450.  * @param offset
  3451.  */
  3452.     public static void glVertexAttrib3fv(
  3453.         int indx,
  3454.         float[] values,
  3455.         int offset
  3456.     ) {
  3457.       glVertexAttrib3fv1(
  3458.             indx,
  3459.             values,
  3460.             offset
  3461.       );
  3462.     }
  3463. /**
  3464.  * C function void glVertexAttrib3fv ( GLuint indx, const GLfloat *values )
  3465.  * @param indx
  3466.  * @param values
  3467.  */
  3468.     public static void glVertexAttrib3fv(
  3469.         int indx,
  3470.         java.nio.FloatBuffer values
  3471.     ) {
  3472.       glVertexAttrib3fv2(
  3473.             indx,
  3474.             values
  3475.       );
  3476.     }
  3477.     static native void glVertexAttrib3fv1(
  3478.         int indx,
  3479.         float[] values,
  3480.         int offset
  3481.     );
  3482.     static native void glVertexAttrib3fv2(
  3483.         int indx,
  3484.         java.nio.FloatBuffer values
  3485.     );
  3486. /**
  3487.  * C function void glVertexAttrib4f ( GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w )
  3488.  * @param indx
  3489.  * @param x
  3490.  * @param y
  3491.  * @param z
  3492.  * @param w
  3493.  */
  3494.     public static native void glVertexAttrib4f(
  3495.         int indx,
  3496.         float x,
  3497.         float y,
  3498.         float z,
  3499.         float w
  3500.     );
  3501. /**
  3502.  * C function void glVertexAttrib4fv ( GLuint indx, const GLfloat *values )
  3503.  * @param indx
  3504.  * @param values
  3505.  * @param offset
  3506.  */
  3507.     public static void glVertexAttrib4fv(
  3508.         int indx,
  3509.         float[] values,
  3510.         int offset
  3511.     ) {
  3512.       glVertexAttrib4fv1(
  3513.             indx,
  3514.             values,
  3515.             offset
  3516.       );
  3517.     }
  3518. /**
  3519.  * C function void glVertexAttrib4fv ( GLuint indx, const GLfloat *values )
  3520.  * @param indx
  3521.  * @param values
  3522.  */
  3523.     public static void glVertexAttrib4fv(
  3524.         int indx,
  3525.         java.nio.FloatBuffer values
  3526.     ) {
  3527.       glVertexAttrib4fv2(
  3528.             indx,
  3529.             values
  3530.       );
  3531.     }
  3532.     static native void glVertexAttrib4fv1(
  3533.         int indx,
  3534.         float[] values,
  3535.         int offset
  3536.     );
  3537.     static native void glVertexAttrib4fv2(
  3538.         int indx,
  3539.         java.nio.FloatBuffer values
  3540.     );
  3541. /**
  3542.  * C function void glVertexAttribPointer ( GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLint offset )
  3543.  * @param indx
  3544.  * @param size
  3545.  * @param type
  3546.  * @param normalized
  3547.  * @param stride
  3548.  * @param ptr
  3549.  * @param offset
  3550.  */
  3551.     public static void glVertexAttribPointer(
  3552.         int indx,
  3553.         int size,
  3554.         int type,
  3555.         boolean normalized,
  3556.         int stride,
  3557.         int[] ptr,
  3558.         int offset
  3559.     ) {
  3560.         glVertexAttribPointer1(
  3561.                 indx,
  3562.                 size,
  3563.                 type,
  3564.                 normalized,
  3565.                 stride,
  3566.                 ptr,
  3567.                 offset
  3568.             );     
  3569.     }
  3570.     static native void glVertexAttribPointer1(
  3571.             int indx,
  3572.             int size,
  3573.             int type,
  3574.             boolean normalized,
  3575.             int stride,
  3576.             int[] ptr,
  3577.             int offset
  3578.      );
  3579. /**
  3580.  * C function void glVertexAttribPointer ( GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *ptr )
  3581.  * @param indx
  3582.  * @param size
  3583.  * @param type
  3584.  * @param normalized
  3585.  * @param stride
  3586.  * @param ptr
  3587.  */
  3588.     public static void glVertexAttribPointer(
  3589.         int indx,
  3590.         int size,
  3591.         int type,
  3592.         boolean normalized,
  3593.         int stride,
  3594.         java.nio.Buffer ptr
  3595.     ) {
  3596.         glVertexAttribPointer2(
  3597.             indx,
  3598.             size,
  3599.             type,
  3600.             normalized,
  3601.             stride,
  3602.             ptr
  3603.         );
  3604.     }
  3605.     static native void glVertexAttribPointer2(
  3606.             int indx,
  3607.             int size,
  3608.             int type,
  3609.             boolean normalized,
  3610.             int stride,
  3611.             java.nio.Buffer ptr
  3612.     );
  3613. /**
  3614.  * C function void glViewport ( GLint x, GLint y, GLsizei width, GLsizei height )
  3615.  * @param x
  3616.  * @param y
  3617.  * @param width
  3618.  * @param height
  3619.  */
  3620.     public static native void glViewport(
  3621.         int x,
  3622.         int y,
  3623.         int width,
  3624.         int height
  3625.     );
  3626. /**
  3627.  * load jni library interface
  3628.  */
  3629.     static {
  3630.       System.loadLibrary("gles20jni");
  3631.     }    
  3632. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement