PageRenderTime 42ms CodeModel.GetById 9ms RepoModel.GetById 1ms app.codeStats 0ms

/game_platform/lib/lwjgl-2.8.5/src/generated/org/lwjgl/opengles/GLES30.java

https://bitbucket.org/dagronlund/opengl-game-platform
Java | 1261 lines | 1059 code | 139 blank | 63 comment | 25 complexity | c75610c65131a9ca8f414522ce669367 MD5 | raw file

Large files files are truncated, but you can click here to view the full file

  1. /* MACHINE GENERATED FILE, DO NOT EDIT */
  2. package org.lwjgl.opengles;
  3. import org.lwjgl.*;
  4. import java.nio.*;
  5. public final class GLES30 {
  6. public static final int GL_READ_BUFFER = 0xC02,
  7. GL_UNPACK_ROW_LENGTH = 0xCF2,
  8. GL_UNPACK_SKIP_ROWS = 0xCF3,
  9. GL_UNPACK_SKIP_PIXELS = 0xCF4,
  10. GL_PACK_ROW_LENGTH = 0xD02,
  11. GL_PACK_SKIP_ROWS = 0xD03,
  12. GL_PACK_SKIP_PIXELS = 0xD04,
  13. GL_COLOR = 0x1800,
  14. GL_DEPTH = 0x1801,
  15. GL_STENCIL = 0x1802,
  16. GL_RED = 0x1903,
  17. GL_RGB8 = 0x8051,
  18. GL_RGBA8 = 0x8058,
  19. GL_RGB10_A2 = 0x8059,
  20. GL_TEXTURE_BINDING_3D = 0x806A,
  21. GL_PACK_SKIP_IMAGES = 0x806B,
  22. GL_PACK_IMAGE_HEIGHT = 0x806C,
  23. GL_UNPACK_SKIP_IMAGES = 0x806D,
  24. GL_UNPACK_IMAGE_HEIGHT = 0x806E,
  25. GL_TEXTURE_3D = 0x806F,
  26. GL_TEXTURE_WRAP_R = 0x8072,
  27. GL_MAX_3D_TEXTURE_SIZE = 0x8073,
  28. GL_UNSIGNED_INT_2_10_10_10_REV = 0x8368,
  29. GL_MAX_ELEMENTS_VERTICES = 0x80E8,
  30. GL_MAX_ELEMENTS_INDICES = 0x80E9,
  31. GL_TEXTURE_MIN_LOD = 0x813A,
  32. GL_TEXTURE_MAX_LOD = 0x813B,
  33. GL_TEXTURE_BASE_LEVEL = 0x813C,
  34. GL_TEXTURE_MAX_LEVEL = 0x813D,
  35. GL_MIN = 0x8007,
  36. GL_MAX = 0x8008,
  37. GL_DEPTH_COMPONENT24 = 0x81A6,
  38. GL_MAX_TEXTURE_LOD_BIAS = 0x84FD,
  39. GL_TEXTURE_COMPARE_MODE = 0x884C,
  40. GL_TEXTURE_COMPARE_FUNC = 0x884D,
  41. GL_CURRENT_QUERY = 0x8865,
  42. GL_QUERY_RESULT = 0x8866,
  43. GL_QUERY_RESULT_AVAILABLE = 0x8867,
  44. GL_BUFFER_MAPPED = 0x88BC,
  45. GL_BUFFER_MAP_POINTER = 0x88BD,
  46. GL_STREAM_READ = 0x88E1,
  47. GL_STREAM_COPY = 0x88E2,
  48. GL_STATIC_READ = 0x88E5,
  49. GL_STATIC_COPY = 0x88E6,
  50. GL_DYNAMIC_READ = 0x88E9,
  51. GL_DYNAMIC_COPY = 0x88EA,
  52. GL_MAX_DRAW_BUFFERS = 0x8824,
  53. GL_DRAW_BUFFER0 = 0x8825,
  54. GL_DRAW_BUFFER1 = 0x8826,
  55. GL_DRAW_BUFFER2 = 0x8827,
  56. GL_DRAW_BUFFER3 = 0x8828,
  57. GL_DRAW_BUFFER4 = 0x8829,
  58. GL_DRAW_BUFFER5 = 0x882A,
  59. GL_DRAW_BUFFER6 = 0x882B,
  60. GL_DRAW_BUFFER7 = 0x882C,
  61. GL_DRAW_BUFFER8 = 0x882D,
  62. GL_DRAW_BUFFER9 = 0x882E,
  63. GL_DRAW_BUFFER10 = 0x882F,
  64. GL_DRAW_BUFFER11 = 0x8830,
  65. GL_DRAW_BUFFER12 = 0x8831,
  66. GL_DRAW_BUFFER13 = 0x8832,
  67. GL_DRAW_BUFFER14 = 0x8833,
  68. GL_DRAW_BUFFER15 = 0x8834,
  69. GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49,
  70. GL_MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A,
  71. GL_SAMPLER_3D = 0x8B5F,
  72. GL_SAMPLER_2D_SHADOW = 0x8B62,
  73. GL_FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8B8B,
  74. GL_PIXEL_PACK_BUFFER = 0x88EB,
  75. GL_PIXEL_UNPACK_BUFFER = 0x88EC,
  76. GL_PIXEL_PACK_BUFFER_BINDING = 0x88ED,
  77. GL_PIXEL_UNPACK_BUFFER_BINDING = 0x88EF,
  78. GL_FLOAT_MAT2x3 = 0x8B65,
  79. GL_FLOAT_MAT2x4 = 0x8B66,
  80. GL_FLOAT_MAT3x2 = 0x8B67,
  81. GL_FLOAT_MAT3x4 = 0x8B68,
  82. GL_FLOAT_MAT4x2 = 0x8B69,
  83. GL_FLOAT_MAT4x3 = 0x8B6A,
  84. GL_SRGB = 0x8C40,
  85. GL_SRGB8 = 0x8C41,
  86. GL_SRGB8_ALPHA8 = 0x8C43,
  87. GL_COMPARE_REF_TO_TEXTURE = 0x884E,
  88. GL_MAJOR_VERSION = 0x821B,
  89. GL_MINOR_VERSION = 0x821C,
  90. GL_NUM_EXTENSIONS = 0x821D,
  91. GL_RGBA32F = 0x8814,
  92. GL_RGB32F = 0x8815,
  93. GL_RGBA16F = 0x881A,
  94. GL_RGB16F = 0x881B,
  95. GL_VERTEX_ATTRIB_ARRAY_INTEGER = 0x88FD,
  96. GL_MAX_ARRAY_TEXTURE_LAYERS = 0x88FF,
  97. GL_MIN_PROGRAM_TEXEL_OFFSET = 0x8904,
  98. GL_MAX_PROGRAM_TEXEL_OFFSET = 0x8905,
  99. GL_MAX_VARYING_COMPONENTS = 0x8B4B,
  100. GL_TEXTURE_2D_ARRAY = 0x8C1A,
  101. GL_TEXTURE_BINDING_2D_ARRAY = 0x8C1D,
  102. GL_R11F_G11F_B10F = 0x8C3A,
  103. GL_UNSIGNED_INT_10F_11F_11F_REV = 0x8C3B,
  104. GL_RGB9_E5 = 0x8C3D,
  105. GL_UNSIGNED_INT_5_9_9_9_REV = 0x8C3E,
  106. GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = 0x8C76,
  107. GL_TRANSFORM_FEEDBACK_BUFFER_MODE = 0x8C7F,
  108. GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 0x8C80,
  109. GL_TRANSFORM_FEEDBACK_VARYINGS = 0x8C83,
  110. GL_TRANSFORM_FEEDBACK_BUFFER_START = 0x8C84,
  111. GL_TRANSFORM_FEEDBACK_BUFFER_SIZE = 0x8C85,
  112. GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 0x8C88,
  113. GL_RASTERIZER_DISCARD = 0x8C89,
  114. GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 0x8C8A,
  115. GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 0x8C8B,
  116. GL_INTERLEAVED_ATTRIBS = 0x8C8C,
  117. GL_SEPARATE_ATTRIBS = 0x8C8D,
  118. GL_TRANSFORM_FEEDBACK_BUFFER = 0x8C8E,
  119. GL_TRANSFORM_FEEDBACK_BUFFER_BINDING = 0x8C8F,
  120. GL_RGBA32UI = 0x8D70,
  121. GL_RGB32UI = 0x8D71,
  122. GL_RGBA16UI = 0x8D76,
  123. GL_RGB16UI = 0x8D77,
  124. GL_RGBA8UI = 0x8D7C,
  125. GL_RGB8UI = 0x8D7D,
  126. GL_RGBA32I = 0x8D82,
  127. GL_RGB32I = 0x8D83,
  128. GL_RGBA16I = 0x8D88,
  129. GL_RGB16I = 0x8D89,
  130. GL_RGBA8I = 0x8D8E,
  131. GL_RGB8I = 0x8D8F,
  132. GL_RED_INTEGER = 0x8D94,
  133. GL_RGB_INTEGER = 0x8D98,
  134. GL_RGBA_INTEGER = 0x8D99,
  135. GL_SAMPLER_2D_ARRAY = 0x8DC1,
  136. GL_SAMPLER_2D_ARRAY_SHADOW = 0x8DC4,
  137. GL_SAMPLER_CUBE_SHADOW = 0x8DC5,
  138. GL_UNSIGNED_INT_VEC2 = 0x8DC6,
  139. GL_UNSIGNED_INT_VEC3 = 0x8DC7,
  140. GL_UNSIGNED_INT_VEC4 = 0x8DC8,
  141. GL_INT_SAMPLER_2D = 0x8DCA,
  142. GL_INT_SAMPLER_3D = 0x8DCB,
  143. GL_INT_SAMPLER_CUBE = 0x8DCC,
  144. GL_INT_SAMPLER_2D_ARRAY = 0x8DCF,
  145. GL_UNSIGNED_INT_SAMPLER_2D = 0x8DD2,
  146. GL_UNSIGNED_INT_SAMPLER_3D = 0x8DD3,
  147. GL_UNSIGNED_INT_SAMPLER_CUBE = 0x8DD4,
  148. GL_UNSIGNED_INT_SAMPLER_2D_ARRAY = 0x8DD7,
  149. GL_BUFFER_ACCESS_FLAGS = 0x911F,
  150. GL_BUFFER_MAP_LENGTH = 0x9120,
  151. GL_BUFFER_MAP_OFFSET = 0x9121,
  152. GL_DEPTH_COMPONENT32F = 0x8CAC,
  153. GL_DEPTH32F_STENCIL8 = 0x8CAD,
  154. GL_FLOAT_32_UNSIGNED_INT_24_8_REV = 0x8DAD,
  155. GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 0x8210,
  156. GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 0x8211,
  157. GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE = 0x8212,
  158. GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 0x8213,
  159. GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 0x8214,
  160. GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 0x8215,
  161. GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 0x8216,
  162. GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 0x8217,
  163. GL_FRAMEBUFFER_DEFAULT = 0x8218,
  164. GL_FRAMEBUFFER_UNDEFINED = 0x8219,
  165. GL_DEPTH_STENCIL_ATTACHMENT = 0x821A,
  166. GL_DEPTH_STENCIL = 0x84F9,
  167. GL_UNSIGNED_INT_24_8 = 0x84FA,
  168. GL_DEPTH24_STENCIL8 = 0x88F0,
  169. GL_UNSIGNED_NORMALIZED = 0x8C17,
  170. GL_DRAW_FRAMEBUFFER_BINDING = 0x8CA6,
  171. GL_READ_FRAMEBUFFER = 0x8CA8,
  172. GL_DRAW_FRAMEBUFFER = 0x8CA9,
  173. GL_READ_FRAMEBUFFER_BINDING = 0x8CAA,
  174. GL_RENDERBUFFER_SAMPLES = 0x8CAB,
  175. GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 0x8CD4,
  176. GL_MAX_COLOR_ATTACHMENTS = 0x8CDF,
  177. GL_COLOR_ATTACHMENT1 = 0x8CE1,
  178. GL_COLOR_ATTACHMENT2 = 0x8CE2,
  179. GL_COLOR_ATTACHMENT3 = 0x8CE3,
  180. GL_COLOR_ATTACHMENT4 = 0x8CE4,
  181. GL_COLOR_ATTACHMENT5 = 0x8CE5,
  182. GL_COLOR_ATTACHMENT6 = 0x8CE6,
  183. GL_COLOR_ATTACHMENT7 = 0x8CE7,
  184. GL_COLOR_ATTACHMENT8 = 0x8CE8,
  185. GL_COLOR_ATTACHMENT9 = 0x8CE9,
  186. GL_COLOR_ATTACHMENT10 = 0x8CEA,
  187. GL_COLOR_ATTACHMENT11 = 0x8CEB,
  188. GL_COLOR_ATTACHMENT12 = 0x8CEC,
  189. GL_COLOR_ATTACHMENT13 = 0x8CED,
  190. GL_COLOR_ATTACHMENT14 = 0x8CEE,
  191. GL_COLOR_ATTACHMENT15 = 0x8CEF,
  192. GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 0x8D56,
  193. GL_MAX_SAMPLES = 0x8D57,
  194. GL_HALF_FLOAT = 0x140B,
  195. GL_MAP_READ_BIT = 0x1,
  196. GL_MAP_WRITE_BIT = 0x2,
  197. GL_MAP_INVALIDATE_RANGE_BIT = 0x4,
  198. GL_MAP_INVALIDATE_BUFFER_BIT = 0x8,
  199. GL_MAP_FLUSH_EXPLICIT_BIT = 0x10,
  200. GL_MAP_UNSYNCHRONIZED_BIT = 0x20,
  201. GL_RG = 0x8227,
  202. GL_RG_INTEGER = 0x8228,
  203. GL_R8 = 0x8229,
  204. GL_RG8 = 0x822B,
  205. GL_R16F = 0x822D,
  206. GL_R32F = 0x822E,
  207. GL_RG16F = 0x822F,
  208. GL_RG32F = 0x8230,
  209. GL_R8I = 0x8231,
  210. GL_R8UI = 0x8232,
  211. GL_R16I = 0x8233,
  212. GL_R16UI = 0x8234,
  213. GL_R32I = 0x8235,
  214. GL_R32UI = 0x8236,
  215. GL_RG8I = 0x8237,
  216. GL_RG8UI = 0x8238,
  217. GL_RG16I = 0x8239,
  218. GL_RG16UI = 0x823A,
  219. GL_RG32I = 0x823B,
  220. GL_RG32UI = 0x823C,
  221. GL_VERTEX_ARRAY_BINDING = 0x85B5,
  222. GL_R8_SNORM = 0x8F94,
  223. GL_RG8_SNORM = 0x8F95,
  224. GL_RGB8_SNORM = 0x8F96,
  225. GL_RGBA8_SNORM = 0x8F97,
  226. GL_SIGNED_NORMALIZED = 0x8F9C,
  227. GL_PRIMITIVE_RESTART_FIXED_INDEX = 0x8D69,
  228. GL_COPY_READ_BUFFER = 0x8F36,
  229. GL_COPY_WRITE_BUFFER = 0x8F37,
  230. GL_COPY_READ_BUFFER_BINDING = 0x8F36,
  231. GL_COPY_WRITE_BUFFER_BINDING = 0x8F37,
  232. GL_UNIFORM_BUFFER = 0x8A11,
  233. GL_UNIFORM_BUFFER_BINDING = 0x8A28,
  234. GL_UNIFORM_BUFFER_START = 0x8A29,
  235. GL_UNIFORM_BUFFER_SIZE = 0x8A2A,
  236. GL_MAX_VERTEX_UNIFORM_BLOCKS = 0x8A2B,
  237. GL_MAX_FRAGMENT_UNIFORM_BLOCKS = 0x8A2D,
  238. GL_MAX_COMBINED_UNIFORM_BLOCKS = 0x8A2E,
  239. GL_MAX_UNIFORM_BUFFER_BINDINGS = 0x8A2F,
  240. GL_MAX_UNIFORM_BLOCK_SIZE = 0x8A30,
  241. GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 0x8A31,
  242. GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 0x8A33,
  243. GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT = 0x8A34,
  244. GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = 0x8A35,
  245. GL_ACTIVE_UNIFORM_BLOCKS = 0x8A36,
  246. GL_UNIFORM_TYPE = 0x8A37,
  247. GL_UNIFORM_SIZE = 0x8A38,
  248. GL_UNIFORM_NAME_LENGTH = 0x8A39,
  249. GL_UNIFORM_BLOCK_INDEX = 0x8A3A,
  250. GL_UNIFORM_OFFSET = 0x8A3B,
  251. GL_UNIFORM_ARRAY_STRIDE = 0x8A3C,
  252. GL_UNIFORM_MATRIX_STRIDE = 0x8A3D,
  253. GL_UNIFORM_IS_ROW_MAJOR = 0x8A3E,
  254. GL_UNIFORM_BLOCK_BINDING = 0x8A3F,
  255. GL_UNIFORM_BLOCK_DATA_SIZE = 0x8A40,
  256. GL_UNIFORM_BLOCK_NAME_LENGTH = 0x8A41,
  257. GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS = 0x8A42,
  258. GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 0x8A43,
  259. GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 0x8A44,
  260. GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 0x8A46,
  261. GL_INVALID_INDEX = 0xFFFFFFFF,
  262. GL_MAX_VERTEX_OUTPUT_COMPONENTS = 0x9122,
  263. GL_MAX_FRAGMENT_INPUT_COMPONENTS = 0x9125,
  264. GL_MAX_SERVER_WAIT_TIMEOUT = 0x9111,
  265. GL_OBJECT_TYPE = 0x9112,
  266. GL_SYNC_CONDITION = 0x9113,
  267. GL_SYNC_STATUS = 0x9114,
  268. GL_SYNC_FLAGS = 0x9115,
  269. GL_SYNC_FENCE = 0x9116,
  270. GL_SYNC_GPU_COMMANDS_COMPLETE = 0x9117,
  271. GL_UNSIGNALED = 0x9118,
  272. GL_SIGNALED = 0x9119,
  273. GL_ALREADY_SIGNALED = 0x911A,
  274. GL_TIMEOUT_EXPIRED = 0x911B,
  275. GL_CONDITION_SATISFIED = 0x911C,
  276. GL_WAIT_FAILED = 0x911D,
  277. GL_SYNC_FLUSH_COMMANDS_BIT = 0x1;
  278. public static final long GL_TIMEOUT_IGNORED = 0xFFFFFFFFFFFFFFFFL;
  279. public static final int GL_VERTEX_ATTRIB_ARRAY_DIVISOR = 0x88FE,
  280. GL_ANY_SAMPLES_PASSED = 0x8C2F,
  281. GL_ANY_SAMPLES_PASSED_CONSERVATIVE = 0x8D6A,
  282. GL_SAMPLER_BINDING = 0x8919,
  283. GL_RGB10_A2UI = 0x906F,
  284. GL_TEXTURE_SWIZZLE_R = 0x8E42,
  285. GL_TEXTURE_SWIZZLE_G = 0x8E43,
  286. GL_TEXTURE_SWIZZLE_B = 0x8E44,
  287. GL_TEXTURE_SWIZZLE_A = 0x8E45,
  288. GL_GREEN = 0x1904,
  289. GL_BLUE = 0x1905,
  290. GL_INT_2_10_10_10_REV = 0x8D9F,
  291. GL_TRANSFORM_FEEDBACK = 0x8E22,
  292. GL_TRANSFORM_FEEDBACK_PAUSED = 0x8E23,
  293. GL_TRANSFORM_FEEDBACK_ACTIVE = 0x8E24,
  294. GL_TRANSFORM_FEEDBACK_BINDING = 0x8E25,
  295. GL_PROGRAM_BINARY_RETRIEVABLE_HINT = 0x8257,
  296. GL_PROGRAM_BINARY_LENGTH = 0x8741,
  297. GL_NUM_PROGRAM_BINARY_FORMATS = 0x87FE,
  298. GL_PROGRAM_BINARY_FORMATS = 0x87FF,
  299. GL_COMPRESSED_R11_EAC = 0x9270,
  300. GL_COMPRESSED_SIGNED_R11_EAC = 0x9271,
  301. GL_COMPRESSED_RG11_EAC = 0x9272,
  302. GL_COMPRESSED_SIGNED_RG11_EAC = 0x9273,
  303. GL_COMPRESSED_RGB8_ETC2 = 0x9274,
  304. GL_COMPRESSED_SRGB8_ETC2 = 0x9275,
  305. GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9276,
  306. GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9277,
  307. GL_COMPRESSED_RGBA8_ETC2_EAC = 0x9278,
  308. GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 0x9279,
  309. GL_TEXTURE_IMMUTABLE_FORMAT = 0x912F,
  310. GL_MAX_ELEMENT_INDEX = 0x8D6B,
  311. GL_NUM_SAMPLE_COUNTS = 0x9380;
  312. private GLES30() {}
  313. static native void initNativeStubs() throws LWJGLException;
  314. public static void glReadBuffer(int mode) {
  315. nglReadBuffer(mode);
  316. }
  317. static native void nglReadBuffer(int mode);
  318. public static void glDrawRangeElements(int mode, int start, int end, ByteBuffer indices) {
  319. GLChecks.ensureElementVBOdisabled();
  320. BufferChecks.checkDirect(indices);
  321. nglDrawRangeElements(mode, start, end, indices.remaining(), GLES20.GL_UNSIGNED_BYTE, MemoryUtil.getAddress(indices));
  322. }
  323. public static void glDrawRangeElements(int mode, int start, int end, IntBuffer indices) {
  324. GLChecks.ensureElementVBOdisabled();
  325. BufferChecks.checkDirect(indices);
  326. nglDrawRangeElements(mode, start, end, indices.remaining(), GLES20.GL_UNSIGNED_INT, MemoryUtil.getAddress(indices));
  327. }
  328. public static void glDrawRangeElements(int mode, int start, int end, ShortBuffer indices) {
  329. GLChecks.ensureElementVBOdisabled();
  330. BufferChecks.checkDirect(indices);
  331. nglDrawRangeElements(mode, start, end, indices.remaining(), GLES20.GL_UNSIGNED_SHORT, MemoryUtil.getAddress(indices));
  332. }
  333. static native void nglDrawRangeElements(int mode, int start, int end, int indices_count, int type, long indices);
  334. public static void glDrawRangeElements(int mode, int start, int end, int indices_count, int type, long indices_buffer_offset) {
  335. GLChecks.ensureElementVBOenabled();
  336. nglDrawRangeElementsBO(mode, start, end, indices_count, type, indices_buffer_offset);
  337. }
  338. static native void nglDrawRangeElementsBO(int mode, int start, int end, int indices_count, int type, long indices_buffer_offset);
  339. public static void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, ByteBuffer pixels) {
  340. GLChecks.ensureUnpackPBOdisabled();
  341. if (pixels != null)
  342. BufferChecks.checkBuffer(pixels, GLChecks.calculateTexImage3DStorage(pixels, format, type, width, height, depth));
  343. nglTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, MemoryUtil.getAddressSafe(pixels));
  344. }
  345. public static void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, FloatBuffer pixels) {
  346. GLChecks.ensureUnpackPBOdisabled();
  347. if (pixels != null)
  348. BufferChecks.checkBuffer(pixels, GLChecks.calculateTexImage3DStorage(pixels, format, type, width, height, depth));
  349. nglTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, MemoryUtil.getAddressSafe(pixels));
  350. }
  351. public static void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, IntBuffer pixels) {
  352. GLChecks.ensureUnpackPBOdisabled();
  353. if (pixels != null)
  354. BufferChecks.checkBuffer(pixels, GLChecks.calculateTexImage3DStorage(pixels, format, type, width, height, depth));
  355. nglTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, MemoryUtil.getAddressSafe(pixels));
  356. }
  357. public static void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, ShortBuffer pixels) {
  358. GLChecks.ensureUnpackPBOdisabled();
  359. if (pixels != null)
  360. BufferChecks.checkBuffer(pixels, GLChecks.calculateTexImage3DStorage(pixels, format, type, width, height, depth));
  361. nglTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, MemoryUtil.getAddressSafe(pixels));
  362. }
  363. static native void nglTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, long pixels);
  364. public static void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, long pixels_buffer_offset) {
  365. GLChecks.ensureUnpackPBOenabled();
  366. nglTexImage3DBO(target, level, internalFormat, width, height, depth, border, format, type, pixels_buffer_offset);
  367. }
  368. static native void nglTexImage3DBO(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, long pixels_buffer_offset);
  369. public static void glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, ByteBuffer pixels) {
  370. GLChecks.ensureUnpackPBOdisabled();
  371. BufferChecks.checkBuffer(pixels, GLChecks.calculateImageStorage(pixels, format, type, width, height, depth));
  372. nglTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, MemoryUtil.getAddress(pixels));
  373. }
  374. public static void glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, FloatBuffer pixels) {
  375. GLChecks.ensureUnpackPBOdisabled();
  376. BufferChecks.checkBuffer(pixels, GLChecks.calculateImageStorage(pixels, format, type, width, height, depth));
  377. nglTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, MemoryUtil.getAddress(pixels));
  378. }
  379. public static void glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, IntBuffer pixels) {
  380. GLChecks.ensureUnpackPBOdisabled();
  381. BufferChecks.checkBuffer(pixels, GLChecks.calculateImageStorage(pixels, format, type, width, height, depth));
  382. nglTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, MemoryUtil.getAddress(pixels));
  383. }
  384. public static void glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, ShortBuffer pixels) {
  385. GLChecks.ensureUnpackPBOdisabled();
  386. BufferChecks.checkBuffer(pixels, GLChecks.calculateImageStorage(pixels, format, type, width, height, depth));
  387. nglTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, MemoryUtil.getAddress(pixels));
  388. }
  389. static native void nglTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, long pixels);
  390. public static void glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, long pixels_buffer_offset) {
  391. GLChecks.ensureUnpackPBOenabled();
  392. nglTexSubImage3DBO(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels_buffer_offset);
  393. }
  394. static native void nglTexSubImage3DBO(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, long pixels_buffer_offset);
  395. public static void glCopyTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height) {
  396. nglCopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
  397. }
  398. static native void nglCopyTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height);
  399. public static void glCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, ByteBuffer data) {
  400. GLChecks.ensureUnpackPBOdisabled();
  401. BufferChecks.checkDirect(data);
  402. nglCompressedTexImage3D(target, level, internalformat, width, height, depth, border, data.remaining(), MemoryUtil.getAddress(data));
  403. }
  404. static native void nglCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int data_imageSize, long data);
  405. public static void glCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int data_imageSize, long data_buffer_offset) {
  406. GLChecks.ensureUnpackPBOenabled();
  407. nglCompressedTexImage3DBO(target, level, internalformat, width, height, depth, border, data_imageSize, data_buffer_offset);
  408. }
  409. static native void nglCompressedTexImage3DBO(int target, int level, int internalformat, int width, int height, int depth, int border, int data_imageSize, long data_buffer_offset);
  410. public static void glCompressedTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, ByteBuffer data) {
  411. GLChecks.ensureUnpackPBOdisabled();
  412. BufferChecks.checkDirect(data);
  413. nglCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, data.remaining(), MemoryUtil.getAddress(data));
  414. }
  415. static native void nglCompressedTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int data_imageSize, long data);
  416. public static void glCompressedTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int data_imageSize, long data_buffer_offset) {
  417. GLChecks.ensureUnpackPBOenabled();
  418. nglCompressedTexSubImage3DBO(target, level, xoffset, yoffset, zoffset, width, height, depth, format, data_imageSize, data_buffer_offset);
  419. }
  420. static native void nglCompressedTexSubImage3DBO(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int data_imageSize, long data_buffer_offset);
  421. public static void glGenQueries(IntBuffer ids) {
  422. BufferChecks.checkDirect(ids);
  423. nglGenQueries(ids.remaining(), MemoryUtil.getAddress(ids));
  424. }
  425. static native void nglGenQueries(int ids_n, long ids);
  426. /** Overloads glGenQueries. */
  427. public static int glGenQueries() {
  428. IntBuffer ids = APIUtil.getBufferInt();
  429. nglGenQueries(1, MemoryUtil.getAddress(ids));
  430. return ids.get(0);
  431. }
  432. public static void glDeleteQueries(IntBuffer ids) {
  433. BufferChecks.checkDirect(ids);
  434. nglDeleteQueries(ids.remaining(), MemoryUtil.getAddress(ids));
  435. }
  436. static native void nglDeleteQueries(int ids_n, long ids);
  437. /** Overloads glDeleteQueries. */
  438. public static void glDeleteQueries(int id) {
  439. nglDeleteQueries(1, APIUtil.getInt(id));
  440. }
  441. public static boolean glIsQuery(int id) {
  442. boolean __result = nglIsQuery(id);
  443. return __result;
  444. }
  445. static native boolean nglIsQuery(int id);
  446. public static void glBeginQuery(int target, int id) {
  447. nglBeginQuery(target, id);
  448. }
  449. static native void nglBeginQuery(int target, int id);
  450. public static void glEndQuery(int target) {
  451. nglEndQuery(target);
  452. }
  453. static native void nglEndQuery(int target);
  454. public static void glGetQuery(int target, int pname, IntBuffer params) {
  455. BufferChecks.checkBuffer(params, 1);
  456. nglGetQueryiv(target, pname, MemoryUtil.getAddress(params));
  457. }
  458. static native void nglGetQueryiv(int target, int pname, long params);
  459. /** Overloads glGetQueryiv. */
  460. public static int glGetQueryi(int target, int pname) {
  461. IntBuffer params = APIUtil.getBufferInt();
  462. nglGetQueryiv(target, pname, MemoryUtil.getAddress(params));
  463. return params.get(0);
  464. }
  465. public static void glGetQueryObjectu(int id, int pname, IntBuffer params) {
  466. BufferChecks.checkBuffer(params, 1);
  467. nglGetQueryObjectuiv(id, pname, MemoryUtil.getAddress(params));
  468. }
  469. static native void nglGetQueryObjectuiv(int id, int pname, long params);
  470. /** Overloads glGetQueryObjectuiv. */
  471. public static int glGetQueryObjectui(int id, int pname) {
  472. IntBuffer params = APIUtil.getBufferInt();
  473. nglGetQueryObjectuiv(id, pname, MemoryUtil.getAddress(params));
  474. return params.get(0);
  475. }
  476. public static boolean glUnmapBuffer(int target) {
  477. boolean __result = nglUnmapBuffer(target);
  478. return __result;
  479. }
  480. static native boolean nglUnmapBuffer(int target);
  481. public static ByteBuffer glGetBufferPointer(int target, int pname) {
  482. ByteBuffer __result = nglGetBufferPointerv(target, pname, GLChecks.getBufferObjectSize(target));
  483. return LWJGLUtil.CHECKS && __result == null ? null : __result.order(ByteOrder.nativeOrder());
  484. }
  485. static native ByteBuffer nglGetBufferPointerv(int target, int pname, long result_size);
  486. public static void glDrawBuffers(IntBuffer buffers) {
  487. BufferChecks.checkDirect(buffers);
  488. nglDrawBuffers(buffers.remaining(), MemoryUtil.getAddress(buffers));
  489. }
  490. static native void nglDrawBuffers(int buffers_size, long buffers);
  491. /** Overloads glDrawBuffers. */
  492. public static void glDrawBuffers(int buffer) {
  493. nglDrawBuffers(1, APIUtil.getInt(buffer));
  494. }
  495. public static void glUniformMatrix2x3(int location, boolean transpose, FloatBuffer matrices) {
  496. BufferChecks.checkDirect(matrices);
  497. nglUniformMatrix2x3fv(location, matrices.remaining() / (2 * 3), transpose, MemoryUtil.getAddress(matrices));
  498. }
  499. static native void nglUniformMatrix2x3fv(int location, int matrices_count, boolean transpose, long matrices);
  500. public static void glUniformMatrix3x2(int location, boolean transpose, FloatBuffer matrices) {
  501. BufferChecks.checkDirect(matrices);
  502. nglUniformMatrix3x2fv(location, matrices.remaining() / (3 * 2), transpose, MemoryUtil.getAddress(matrices));
  503. }
  504. static native void nglUniformMatrix3x2fv(int location, int matrices_count, boolean transpose, long matrices);
  505. public static void glUniformMatrix2x4(int location, boolean transpose, FloatBuffer matrices) {
  506. BufferChecks.checkDirect(matrices);
  507. nglUniformMatrix2x4fv(location, matrices.remaining() >> 3, transpose, MemoryUtil.getAddress(matrices));
  508. }
  509. static native void nglUniformMatrix2x4fv(int location, int matrices_count, boolean transpose, long matrices);
  510. public static void glUniformMatrix4x2(int location, boolean transpose, FloatBuffer matrices) {
  511. BufferChecks.checkDirect(matrices);
  512. nglUniformMatrix4x2fv(location, matrices.remaining() >> 3, transpose, MemoryUtil.getAddress(matrices));
  513. }
  514. static native void nglUniformMatrix4x2fv(int location, int matrices_count, boolean transpose, long matrices);
  515. public static void glUniformMatrix3x4(int location, boolean transpose, FloatBuffer matrices) {
  516. BufferChecks.checkDirect(matrices);
  517. nglUniformMatrix3x4fv(location, matrices.remaining() / (3 * 4), transpose, MemoryUtil.getAddress(matrices));
  518. }
  519. static native void nglUniformMatrix3x4fv(int location, int matrices_count, boolean transpose, long matrices);
  520. public static void glUniformMatrix4x3(int location, boolean transpose, FloatBuffer matrices) {
  521. BufferChecks.checkDirect(matrices);
  522. nglUniformMatrix4x3fv(location, matrices.remaining() / (4 * 3), transpose, MemoryUtil.getAddress(matrices));
  523. }
  524. static native void nglUniformMatrix4x3fv(int location, int matrices_count, boolean transpose, long matrices);
  525. /**
  526. * Transfers a rectangle of pixel values from one
  527. * region of the read framebuffer to another in the draw framebuffer.
  528. * <mask> is the bitwise OR of a number of values indicating which
  529. * buffers are to be copied. The values are COLOR_BUFFER_BIT,
  530. * DEPTH_BUFFER_BIT, and STENCIL_BUFFER_BIT.
  531. * The pixels corresponding to these buffers are
  532. * copied from the source rectangle, bound by the locations (srcX0,
  533. * srcY0) and (srcX1, srcY1) inclusive, to the destination rectangle,
  534. * bound by the locations (dstX0, dstY0) and (dstX1, dstY1)
  535. * inclusive.
  536. * If the source and destination rectangle dimensions do not match,
  537. * the source image is stretched to fit the destination
  538. * rectangle. <filter> must be LINEAR or NEAREST and specifies the
  539. * method of interpolation to be applied if the image is
  540. * stretched.
  541. */
  542. public static void glBlitFramebuffer(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter) {
  543. nglBlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
  544. }
  545. static native void nglBlitFramebuffer(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter);
  546. /**
  547. * Establishes the data storage, format, dimensions, and number of
  548. * samples of a renderbuffer object's image.
  549. */
  550. public static void glRenderbufferStorageMultisample(int target, int samples, int internalformat, int width, int height) {
  551. nglRenderbufferStorageMultisample(target, samples, internalformat, width, height);
  552. }
  553. static native void nglRenderbufferStorageMultisample(int target, int samples, int internalformat, int width, int height);
  554. public static void glFramebufferTextureLayer(int target, int attachment, int texture, int level, int layer) {
  555. nglFramebufferTextureLayer(target, attachment, texture, level, layer);
  556. }
  557. static native void nglFramebufferTextureLayer(int target, int attachment, int texture, int level, int layer);
  558. /**
  559. * glMapBufferRange maps a GL buffer object range to a ByteBuffer. The old_buffer argument can be null,
  560. * in which case a new ByteBuffer will be created, pointing to the returned memory. If old_buffer is non-null,
  561. * it will be returned if it points to the same mapped memory and has the same capacity as the buffer object,
  562. * otherwise a new ByteBuffer is created. That way, an application will normally use glMapBufferRange like this:
  563. * <p/>
  564. * ByteBuffer mapped_buffer; mapped_buffer = glMapBufferRange(..., ..., ..., ..., null); ... // Another map on the same buffer mapped_buffer = glMapBufferRange(..., ..., ..., ..., mapped_buffer);
  565. * <p/>
  566. * Only ByteBuffers returned from this method are to be passed as the old_buffer argument. User-created ByteBuffers cannot be reused.
  567. * <p>
  568. * @param old_buffer A ByteBuffer. If this argument points to the same address and has the same capacity as the new mapping, it will be returned and no new buffer will be created.
  569. * <p>
  570. * @return A ByteBuffer representing the mapped buffer memory.
  571. */
  572. public static ByteBuffer glMapBufferRange(int target, long offset, long length, int access, ByteBuffer old_buffer) {
  573. if (old_buffer != null)
  574. BufferChecks.checkDirect(old_buffer);
  575. ByteBuffer __result = nglMapBufferRange(target, offset, length, access, old_buffer);
  576. return LWJGLUtil.CHECKS && __result == null ? null : __result.order(ByteOrder.nativeOrder());
  577. }
  578. static native ByteBuffer nglMapBufferRange(int target, long offset, long length, int access, ByteBuffer old_buffer);
  579. public static void glFlushMappedBufferRange(int target, long offset, long length) {
  580. nglFlushMappedBufferRange(target, offset, length);
  581. }
  582. static native void nglFlushMappedBufferRange(int target, long offset, long length);
  583. public static void glBindVertexArray(int array) {
  584. StateTracker.bindVAO(array);
  585. nglBindVertexArray(array);
  586. }
  587. static native void nglBindVertexArray(int array);
  588. public static void glDeleteVertexArrays(IntBuffer arrays) {
  589. StateTracker.deleteVAO(arrays);
  590. BufferChecks.checkDirect(arrays);
  591. nglDeleteVertexArrays(arrays.remaining(), MemoryUtil.getAddress(arrays));
  592. }
  593. static native void nglDeleteVertexArrays(int arrays_n, long arrays);
  594. /** Overloads glDeleteVertexArrays. */
  595. public static void glDeleteVertexArrays(int array) {
  596. StateTracker.deleteVAO(array);
  597. nglDeleteVertexArrays(1, APIUtil.getInt(array));
  598. }
  599. public static void glGenVertexArrays(IntBuffer arrays) {
  600. BufferChecks.checkDirect(arrays);
  601. nglGenVertexArrays(arrays.remaining(), MemoryUtil.getAddress(arrays));
  602. }
  603. static native void nglGenVertexArrays(int arrays_n, long arrays);
  604. /** Overloads glGenVertexArrays. */
  605. public static int glGenVertexArrays() {
  606. IntBuffer arrays = APIUtil.getBufferInt();
  607. nglGenVertexArrays(1, MemoryUtil.getAddress(arrays));
  608. return arrays.get(0);
  609. }
  610. public static boolean glIsVertexArray(int array) {
  611. boolean __result = nglIsVertexArray(array);
  612. return __result;
  613. }
  614. static native boolean nglIsVertexArray(int array);
  615. public static void glGetInteger(int value, int index, IntBuffer data) {
  616. BufferChecks.checkBuffer(data, 4);
  617. nglGetIntegeri_v(value, index, MemoryUtil.getAddress(data));
  618. }
  619. static native void nglGetIntegeri_v(int value, int index, long data);
  620. /** Overloads glGetIntegeri_v. */
  621. public static int glGetInteger(int value, int index) {
  622. IntBuffer data = APIUtil.getBufferInt();
  623. nglGetIntegeri_v(value, index, MemoryUtil.getAddress(data));
  624. return data.get(0);
  625. }
  626. public static void glBeginTransformFeedback(int primitiveMode) {
  627. nglBeginTransformFeedback(primitiveMode);
  628. }
  629. static native void nglBeginTransformFeedback(int primitiveMode);
  630. public static void glEndTransformFeedback() {
  631. nglEndTransformFeedback();
  632. }
  633. static native void nglEndTransformFeedback();
  634. public static void glBindBufferRange(int target, int index, int buffer, long offset, long size) {
  635. nglBindBufferRange(target, index, buffer, offset, size);
  636. }
  637. static native void nglBindBufferRange(int target, int index, int buffer, long offset, long size);
  638. public static void glBindBufferBase(int target, int index, int buffer) {
  639. nglBindBufferBase(target, index, buffer);
  640. }
  641. static native void nglBindBufferBase(int target, int index, int buffer);
  642. public static void glTransformFeedbackVaryings(int program, int count, ByteBuffer varyings, int bufferMode) {
  643. BufferChecks.checkDirect(varyings);
  644. BufferChecks.checkNullTerminated(varyings, count);
  645. nglTransformFeedbackVaryings(program, count, MemoryUtil.getAddress(varyings), bufferMode);
  646. }
  647. static native void nglTransformFeedbackVaryings(int program, int count, long varyings, int bufferMode);
  648. /** Overloads glTransformFeedbackVaryings. */
  649. public static void glTransformFeedbackVaryings(int program, CharSequence[] varyings, int bufferMode) {
  650. BufferChecks.checkArray(varyings);
  651. nglTransformFeedbackVaryings(program, varyings.length, APIUtil.getBufferNT(varyings), bufferMode);
  652. }
  653. public static void glGetTransformFeedbackVarying(int program, int index, IntBuffer length, IntBuffer size, IntBuffer type, ByteBuffer name) {
  654. if (length != null)
  655. BufferChecks.checkBuffer(length, 1);
  656. BufferChecks.checkBuffer(size, 1);
  657. BufferChecks.checkBuffer(type, 1);
  658. BufferChecks.checkDirect(name);
  659. nglGetTransformFeedbackVarying(program, index, name.remaining(), MemoryUtil.getAddressSafe(length), MemoryUtil.getAddress(size), MemoryUtil.getAddress(type), MemoryUtil.getAddress(name));
  660. }
  661. static native void nglGetTransformFeedbackVarying(int program, int index, int name_bufSize, long length, long size, long type, long name);
  662. /** Overloads glGetTransformFeedbackVarying. */
  663. public static String glGetTransformFeedbackVarying(int program, int index, int bufSize, IntBuffer size, IntBuffer type) {
  664. BufferChecks.checkBuffer(size, 1);
  665. BufferChecks.checkBuffer(type, 1);
  666. IntBuffer name_length = APIUtil.getLengths();
  667. ByteBuffer name = APIUtil.getBufferByte(bufSize);
  668. nglGetTransformFeedbackVarying(program, index, bufSize, MemoryUtil.getAddress0(name_length), MemoryUtil.getAddress(size), MemoryUtil.getAddress(type), MemoryUtil.getAddress(name));
  669. name.limit(name_length.get(0));
  670. return APIUtil.getString(name);
  671. }
  672. public static void glVertexAttribIPointer(int index, int size, int type, int stride, ByteBuffer buffer) {
  673. GLChecks.ensureArrayVBOdisabled();
  674. BufferChecks.checkDirect(buffer);
  675. if ( LWJGLUtil.CHECKS ) StateTracker.getTracker().glVertexAttribPointer_buffer[index] = buffer;
  676. nglVertexAttribIPointer(index, size, type, stride, MemoryUtil.getAddress(buffer));
  677. }
  678. public static void glVertexAttribIPointer(int index, int size, int type, int stride, IntBuffer buffer) {
  679. GLChecks.ensureArrayVBOdisabled();
  680. BufferChecks.checkDirect(buffer);
  681. if ( LWJGLUtil.CHECKS ) StateTracker.getTracker().glVertexAttribPointer_buffer[index] = buffer;
  682. nglVertexAttribIPointer(index, size, type, stride, MemoryUtil.getAddress(buffer));
  683. }
  684. public static void glVertexAttribIPointer(int index, int size, int type, int stride, ShortBuffer buffer) {
  685. GLChecks.ensureArrayVBOdisabled();
  686. BufferChecks.checkDirect(buffer);
  687. if ( LWJGLUtil.CHECKS ) StateTracker.getTracker().glVertexAttribPointer_buffer[index] = buffer;
  688. nglVertexAttribIPointer(index, size, type, stride, MemoryUtil.getAddress(buffer));
  689. }
  690. static native void nglVertexAttribIPointer(int index, int size, int type, int stride, long buffer);
  691. public static void glVertexAttribIPointer(int index, int size, int type, int stride, long buffer_buffer_offset) {
  692. GLChecks.ensureArrayVBOenabled();
  693. nglVertexAttribIPointerBO(index, size, type, stride, buffer_buffer_offset);
  694. }
  695. static native void nglVertexAttribIPointerBO(int index, int size, int type, int stride, long buffer_buffer_offset);
  696. public static void glGetVertexAttribI(int index, int pname, IntBuffer params) {
  697. BufferChecks.checkBuffer(params, 4);
  698. nglGetVertexAttribIiv(index, pname, MemoryUtil.getAddress(params));
  699. }
  700. static native void nglGetVertexAttribIiv(int index, int pname, long params);
  701. public static void glGetVertexAttribIu(int index, int pname, IntBuffer params) {
  702. BufferChecks.checkBuffer(params, 4);
  703. nglGetVertexAttribIuiv(index, pname, MemoryUtil.getAddress(params));
  704. }
  705. static native void nglGetVertexAttribIuiv(int index, int pname, long params);
  706. public static void glVertexAttribI4i(int index, int x, int y, int z, int w) {
  707. nglVertexAttribI4i(index, x, y, z, w);
  708. }
  709. static native void nglVertexAttribI4i(int index, int x, int y, int z, int w);
  710. public static void glVertexAttribI4ui(int index, int x, int y, int z, int w) {
  711. nglVertexAttribI4ui(index, x, y, z, w);
  712. }
  713. static native void nglVertexAttribI4ui(int index, int x, int y, int z, int w);
  714. public static void glVertexAttribI4(int index, IntBuffer v) {
  715. BufferChecks.checkBuffer(v, 4);
  716. nglVertexAttribI4iv(index, MemoryUtil.getAddress(v));
  717. }
  718. static native void nglVertexAttribI4iv(int index, long v);
  719. public static void glVertexAttribI4u(int index, IntBuffer v) {
  720. BufferChecks.checkBuffer(v, 4);
  721. nglVertexAttribI4uiv(index, MemoryUtil.getAddress(v));
  722. }
  723. static native void nglVertexAttribI4uiv(int index, long v);
  724. public static void glGetUniformu(int program, int location, IntBuffer params) {
  725. BufferChecks.checkDirect(params);
  726. nglGetUniformuiv(program, location, MemoryUtil.getAddress(params));
  727. }
  728. static native void nglGetUniformuiv(int program, int location, long params);
  729. public static int glGetFragDataLocation(int program, ByteBuffer name) {
  730. BufferChecks.checkDirect(name);
  731. BufferChecks.checkNullTerminated(name);
  732. int __result = nglGetFragDataLocation(program, MemoryUtil.getAddress(name));
  733. return __result;
  734. }
  735. static native int nglGetFragDataLocation(int program, long name);
  736. /** Overloads glGetFragDataLocation. */
  737. public static int glGetFragDataLocation(int program, CharSequence name) {
  738. int __result = nglGetFragDataLocation(program, APIUtil.getBufferNT(name));
  739. return __result;
  740. }
  741. public static void glUniform1ui(int location, int v0) {
  742. nglUniform1ui(location, v0);
  743. }
  744. static native void nglUniform1ui(int location, int v0);
  745. public static void glUniform2ui(int location, int v0, int v1) {
  746. nglUniform2ui(location, v0, v1);
  747. }
  748. static native void nglUniform2ui(int location, int v0, int v1);
  749. public static void glUniform3ui(int location, int v0, int v1, int v2) {
  750. nglUniform3ui(location, v0, v1, v2);
  751. }
  752. static native void nglUniform3ui(int location, int v0, int v1, int v2);
  753. public static void glUniform4ui(int location, int v0, int v1, int v2, int v3) {
  754. nglUniform4ui(location, v0, v1, v2, v3);
  755. }
  756. static native void nglUniform4ui(int location, int v0, int v1, int v2, int v3);
  757. public static void glUniform1u(int location, IntBuffer value) {
  758. BufferChecks.checkDirect(value);
  759. nglUniform1uiv(location, value.remaining(), MemoryUtil.getAddress(value));
  760. }
  761. static native void nglUniform1uiv(int location, int value_count, long value);
  762. public static void glUniform2u(int location, IntBuffer value) {
  763. BufferChecks.checkDirect(value);
  764. nglUniform2uiv(location, value.remaining() >> 1, MemoryUtil.getAddress(value));
  765. }
  766. static native void nglUniform2uiv(int location, int value_count, long value);
  767. public static void glUniform3u(int location, IntBuffer value) {
  768. BufferChecks.checkDirect(value);
  769. nglUniform3uiv(location, value.remaining() / 3, MemoryUtil.getAddress(value));
  770. }
  771. static native void nglUniform3uiv(int location, int value_count, long value);
  772. public static void glUniform4u(int location, IntBuffer value) {
  773. BufferChecks.checkDirect(value);
  774. nglUniform4uiv(location, value.remaining() >> 2, MemoryUtil.getAddress(value));
  775. }
  776. static native void nglUniform4uiv(int location, int value_count, long value);
  777. public static void glClearBuffer(int buffer, int drawbuffer, FloatBuffer value) {
  778. BufferChecks.checkBuffer(value, 4);
  779. nglClearBufferfv(buffer, drawbuffer, MemoryUtil.getAddress(value));
  780. }
  781. static native void nglClearBufferfv(int buffer, int drawbuffer, long value);
  782. public static void glClearBuffer(int buffer, int drawbuffer, IntBuffer value) {
  783. BufferChecks.checkBuffer(value, 4);
  784. nglClearBufferiv(buffer, drawbuffer, MemoryUtil.getAddress(value));
  785. }
  786. static native void nglClearBufferiv(int buffer, int drawbuffer, long value);
  787. public static void glClearBufferu(int buffer, int drawbuffer, IntBuffer value) {
  788. BufferChecks.checkBuffer(value, 4);
  789. nglClearBufferuiv(buffer, drawbuffer, MemoryUtil.getAddress(value));
  790. }
  791. static native void nglClearBufferuiv(int buffer, int drawbuffer, long value);
  792. public static void glClearBufferfi(int buffer, int drawbuffer, float depth, int stencil) {
  793. nglClearBufferfi(buffer, drawbuffer, depth, stencil);
  794. }
  795. static native void nglClearBufferfi(int buffer, int drawbuffer, float depth, int stencil);
  796. public static String glGetStringi(int name, int index) {
  797. String __result = nglGetStringi(name, index);
  798. return __result;
  799. }
  800. static native String nglGetStringi(int name, int index);
  801. public static void glCopyBufferSubData(int readtarget, int writetarget, long readoffset, long writeoffset, long size) {
  802. nglCopyBufferSubData(readtarget, writetarget, readoffset, writeoffset, size);
  803. }
  804. static native void nglCopyBufferSubData(int readtarget, int writetarget, long readoffset, long writeoffset, long size);
  805. public static void glGetUniformIndices(int program, ByteBuffer uniformNames, IntBuffer uniformIndices) {
  806. BufferChecks.checkDirect(uniformNames);
  807. BufferChecks.checkNullTerminated(uniformNames, uniformIndices.remaining());
  808. BufferChecks.checkDirect(uniformIndices);
  809. nglGetUniformIndices(program, uniformIndices.remaining(), MemoryUtil.getAddress(uniformNames), MemoryUtil.getAddress(uniformIndices));
  810. }
  811. static native void nglGetUniformIndices(int program, int uniformIndices_uniformCount, long uniformNames, long uniformIndices);
  812. /** Overloads glGetUniformIndices. */
  813. public static void glGetUniformIndices(int program, CharSequence[] uniformNames, IntBuffer uniformIndices) {
  814. BufferChecks.checkArray(uniformNames);
  815. BufferChecks.checkBuffer(uniformIndices, uniformNames.length);
  816. nglGetUniformIndices(program, uniformNames.length, APIUtil.getBufferNT(uniformNames), MemoryUtil.getAddress(uniformIndices));
  817. }
  818. public static void glGetActiveUniforms(int program, IntBuffer uniformIndices, int pname, IntBuffer params) {
  819. BufferChecks.checkDirect(uniformIndices);
  820. BufferChecks.checkBuffer(params, uniformIndices.remaining());
  821. nglGetActiveUniformsiv(program, uniformIndices.remaining(), MemoryUtil.getAddress(uniformIndices), pname, MemoryUtil.getAddress(params));
  822. }
  823. static native void nglGetActiveUniformsiv(int program, int uniformIndices_uniformCount, long uniformIndices, int pname, long params);
  824. /** Overloads glGetActiveUniformsiv. */
  825. public static int glGetActiveUniformsi(int program, int uniformIndex, int pname) {
  826. IntBuffer params = APIUtil.getBufferInt();
  827. nglGetActiveUniformsiv(program, 1, MemoryUtil.getAddress(params.put(1, uniformIndex), 1), pname, MemoryUtil.getAddress(params));
  828. return params.get(0);
  829. }
  830. public static int glGetUniformBlockIndex(int program, ByteBuffer uniformBlockName) {
  831. BufferChecks.checkDirect(uniformBlockName);
  832. BufferChecks.checkNullTerminated(uniformBlockName);
  833. int __result = nglGetUniformBlockIndex(program, MemoryUtil.getAddress(uniformBlockName));
  834. return __result;
  835. }
  836. static native int nglGetUniformBlockIndex(int program, long uniformBlockName);
  837. /** Overloads glGetUniformBlockIndex. */
  838. public static int glGetUniformBlockIndex(int program, CharSequence uniformBlockName) {
  839. int __result = nglGetUniformBlockIndex(program, APIUtil.getBufferNT(uniformBlockName));
  840. return __result;
  841. }
  842. public static void glGetActiveUniformBlock(int program, int uniformBlockIndex, int pname, IntBuffer params) {
  843. BufferChecks.checkBuffer(params, 16);
  844. nglGetActiveUniformBlockiv(program, uniformBlockIndex, pname, MemoryUtil.getAddress(params));
  845. }
  846. static native void nglGetActiveUniformBlockiv(int program, int uniformBlockIndex, int pname, long params);
  847. /** Overloads glGetActiveUniformBlockiv. */
  848. public static int glGetActiveUniformBlocki(int program, int uniformBlockIndex, int pname) {
  849. IntBuffer params = APIUtil.getBufferInt();
  850. nglGetActiveUniformBlockiv(program, uniformBlockIndex, pname, MemoryUtil.getAddress(params));
  851. return params.get(0);
  852. }
  853. public static void glGetActiveUniformBlockName(int program, int uniformBlockIndex, IntBuffer length, ByteBuffer uniformBlockName) {
  854. if (length != null)
  855. BufferChecks.checkBuffer(length, 1);
  856. BufferChecks.checkDirect(uniformBlockName);
  857. nglGetActiveUniformBlockName(program, uniformBlockIndex, uniformBlockName.remaining(), MemoryUtil.getAddressSafe(length), MemoryUtil.getAddress(uniformBlockName));
  858. }
  859. static native void nglGetActiveUniformBlockName(int program, int uniformBlockIndex, int uniformBlockName_bufSize, long length, long uniformBlockName);
  860. /** Overloads glGetActiveUniformBlockName. */
  861. public static String glGetActiveUniformBlockName(int program, int uniformBlockIndex, int bufSize) {
  862. IntBuffer uniformBlockName_length = APIUtil.getLengths();
  863. ByteBuffer uniformBlockName = APIUtil.getBufferByte(bufSize);
  864. nglGetActiveUniformBlockName(program, uniformBlockIndex, bufSize, MemoryUtil.getAddress0(uniformBlockName_length), MemoryUtil.getAddress(uniformBlockName));
  865. uniformBlockName.limit(uniformBlockName_length.get(0));
  866. return APIUtil.getString(uniformBlockName);
  867. }
  868. public static void glUniformBlockBinding(int program, int uniformBlockIndex, int uniformBlockBinding) {
  869. nglUniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
  870. }
  871. static native void nglUniformBlockBinding(int program, int uniformBlockIndex, int uniformBlockBinding);
  872. public static void glDrawArraysInstanced(int mode, int first, int count, int primcount) {
  873. nglDrawArraysInstanced(mode, first, count, primcount);
  874. }
  875. static native void nglDrawArraysInstanced(int mode, int first, int count, int primcount);
  876. public static void glDrawElementsInstanced(int mode, ByteBuffer indices, int primcount) {
  877. GLChecks.ensureElementVBOdisabled();
  878. BufferChecks.checkDirect(indices);
  879. nglDrawElementsInstanced(mode, indices.remaining(), GLES20.GL_UNSIGNED_BYTE, MemoryUtil.getAddress(indices), primcount);
  880. }
  881. public static void glDrawElementsInstanced(int mode, IntBuffer indices, int primcount) {
  882. GLChecks.ensureElementVBOdisabled();
  883. BufferChecks.checkDirect(indices);
  884. nglDrawElementsInstanced(mode, indices.remaining(), GLES20.GL_UNSIGNED_INT, MemoryUtil.getAddress(indices), primcount);
  885. }
  886. public static void glDrawElementsInstanced(int mode, ShortBuffer indices, int primcount) {
  887. GLChecks.ensureElementVBOdisabled();
  888. BufferChecks.checkDirect(indices);
  889. nglDrawElementsInstanced(mode, indices.remaining(), GLES20.GL_UNSIGNED_SHORT, MemoryUtil.getAddress(indices), primcount);
  890. }
  891. static native void nglDrawElementsInstanced(int mode, int indices_count, int type, long indices, int primcount);
  892. public static void glDrawElementsInstanced(int mode, int indices_count, int type, long indices_buffer_offset, int primcount) {
  893. GLChecks.ensureElementVBOenabled();
  894. nglDrawElementsInstancedBO(mode, indices_count, type, indices_buffer_offset, primcount);
  895. }
  896. static native void nglDrawElementsInstancedBO(int mode, int indices_count, int type, long indices_buffer_offset, int primcount);
  897. public static GLSync glFenceSync(int condition, int flags) {
  898. GLSync __result = new GLSync(nglFenceSync(condition, flags));
  899. return __result;
  900. }
  901. static native long nglFenceSync(int condition, int flags);
  902. public static boolean glIsSync(GLSync sync) {
  903. boolean __result = nglIsSync(sync.getPointer());
  904. return __result;
  905. }
  906. static native boolean nglIsSync(long sync);
  907. public static void glDeleteSync(GLSync sync) {
  908. nglDeleteSync(sync.getPointer());
  909. }
  910. static native void nglDeleteSync(long sync);
  911. public static int glClientWaitSync(GLSync sync, int flags, long timeout) {
  912. int __result = nglClientWaitSync(sync.getPointer(), flags, timeout);
  913. return __result;
  914. }
  915. static native int nglClientWaitSync(long sync, int flags, long timeout);
  916. public static void glWaitSync(GLSync sync, int flags, long timeout) {
  917. nglWaitSync(sync.getPointer(), flags, timeout);
  918. }
  919. static native void nglWaitSync(long sync, int flags, long timeout);
  920. public static void glGetInteger64(int pname, LongBuffer data) {
  921. BufferChecks.checkBuffer(data, 1);
  922. nglGetInteger64v(pname, MemoryUtil.getAddress(data));
  923. }
  924. static native void nglGetInteger64v(int pname, long data);
  925. /** Overloads glGetInteger64v. */
  926. public static long glGetInteger64(int pname) {
  927. LongBuffer data = APIUtil.getBufferLong();
  928. nglGetInteger64v(pname, MemoryUtil.getAddress(data));
  929. return data.get(0);
  930. }
  931. public static void glGetInteger64(int value, int index, LongBuffer data) {
  932. BufferChecks.checkBuffer(data, 4);
  933. nglGetInteger64i_v(value, index, MemoryUtil.getAddress(data));
  934. }
  935. static native void nglGetInteger64i_v(int value, int index, long data);
  936. /** Overloads glGetInteger64i_v. */
  937. public static long glGetInteger64(int value, int index) {
  938. LongBuffer data = APIUtil.getBufferLong();
  939. nglGetInteger64i_v(value, index, MemoryUtil.getAddress(data));
  940. return data.get(0);
  941. }
  942. public static void glGetSync(GLSync sync, int pname, IntBuffer length, IntBuffer values) {
  943. if (length != null)
  944. BufferChecks.checkBuffer(length, 1);
  945. BufferChecks.checkDirect(values);
  946. nglGetSynciv(sync.getPointer(), pname, values.remaining(), MemoryUtil.getAddressSafe(length), MemoryUtil.getAddress(values));
  947. }
  948. static native void nglGetSynciv(long sync, int pname, int values_bufSize, long length, long values);
  949. /** Overloads glGetSynciv. */
  950. public static int glGetSynci(GLSync sync, int pname) {
  951. IntBuffer values = APIUtil.getBufferInt();
  952. nglGetSynciv(sync.getPointer(), pname, 1, 0L, MemoryUtil.getAddress(values));
  953. return values.get(0);
  954. }
  955. public static void glGetBufferParameter(int target, int pname, LongBuffer params) {
  956. BufferChecks.checkBuffer(params, 4);
  957. nglGetBufferParameteri64v(target, pname, MemoryUtil.getAddress(params));
  958. }
  959. static native void nglGetBufferParameteri64v(int target, int pname, long params);
  960. /** Overloads glGetBufferParameteri64v. */
  961. public static long glGetBufferParameteri64(int target, int pname) {
  962. LongBuffer params = APIUtil.getBufferLong();
  963. nglGetBufferParameteri64v(target, pname, MemoryUtil.getAddress(params));
  964. return params.get(0);
  965. }
  966. public static void glGenSamplers(IntBuffer samplers) {
  967. BufferChecks.checkDirect(samplers);
  968. nglGenSamplers(samplers.remaining(), MemoryUtil.getAddress(samplers));
  969. }
  970. static native void nglGenSamplers(int samplers_count, long samplers);
  971. /** Overloads glGenSamplers. */
  972. public static int glGenSamplers() {
  973. IntBuffer samplers = APIUtil.getBufferInt();
  974. nglGenSamplers(1, MemoryUtil.getAddress(samplers));
  975. return samplers.get(0);
  976. }
  977. public static void glDeleteSamplers(IntBuffer samplers) {
  978. BufferChecks.checkDirect(samplers);
  979. nglDeleteSamplers(samplers.remaining(), MemoryUtil.getAddress(samplers

Large files files are truncated, but you can click here to view the full file