All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.lwjgl.opengl.GL45 Maven / Gradle / Ivy

There is a newer version: 3.3.0
Show newest version
/*
 * Copyright LWJGL. All rights reserved.
 * License terms: https://www.lwjgl.org/license
 * MACHINE GENERATED FILE, DO NOT EDIT
 */
package org.lwjgl.opengl;

import java.nio.*;

import org.lwjgl.*;

import org.lwjgl.system.*;

import static org.lwjgl.system.APIUtil.*;
import static org.lwjgl.system.Checks.*;
import static org.lwjgl.system.JNI.*;
import static org.lwjgl.system.MemoryStack.*;
import static org.lwjgl.system.MemoryUtil.*;

/**
 * The core OpenGL 4.5 functionality. OpenGL 4.5 implementations support revision 4.50 of the OpenGL Shading Language.
 * 
 * 

Extensions promoted to core in this release:

* * */ public class GL45 { /** Accepted by the {@code depth} parameter of {@link #glClipControl ClipControl}. */ public static final int GL_NEGATIVE_ONE_TO_ONE = 0x935E, GL_ZERO_TO_ONE = 0x935F; /** Accepted by the {@code pname} parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev. */ public static final int GL_CLIP_ORIGIN = 0x935C, GL_CLIP_DEPTH_MODE = 0x935D; /** Accepted by the {@code mode} parameter of {@link GL30#glBeginConditionalRender BeginConditionalRender}. */ public static final int GL_QUERY_WAIT_INVERTED = 0x8E17, GL_QUERY_NO_WAIT_INVERTED = 0x8E18, GL_QUERY_BY_REGION_WAIT_INVERTED = 0x8E19, GL_QUERY_BY_REGION_NO_WAIT_INVERTED = 0x8E1A; /** Accepted by the {@code pname} parameter of GetBooleanv, GetDoublev, GetFloatv, GetIntegerv, and GetInteger64v. */ public static final int GL_MAX_CULL_DISTANCES = 0x82F9, GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES = 0x82FA; /** Accepted by the {@code pname} parameter of GetTextureParameter{if}v and GetTextureParameterI{i ui}v. */ public static final int GL_TEXTURE_TARGET = 0x1006; /** Accepted by the {@code pname} parameter of GetQueryObjectiv. */ public static final int GL_QUERY_TARGET = 0x82EA; /** Accepted by the {@code pname} parameter of GetIntegerv, GetFloatv, GetBooleanv GetDoublev and GetInteger64v. */ public static final int GL_CONTEXT_RELEASE_BEHAVIOR = 0x82FB; /** Returned in {@code data} by GetIntegerv, GetFloatv, GetBooleanv GetDoublev and GetInteger64v when {@code pname} is {@link #GL_CONTEXT_RELEASE_BEHAVIOR CONTEXT_RELEASE_BEHAVIOR}. */ public static final int GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH = 0x82FC; /** Returned by {@link #glGetGraphicsResetStatus GetGraphicsResetStatus}. */ public static final int GL_GUILTY_CONTEXT_RESET = 0x8253, GL_INNOCENT_CONTEXT_RESET = 0x8254, GL_UNKNOWN_CONTEXT_RESET = 0x8255; /** Accepted by the {@code value} parameter of GetBooleanv, GetIntegerv, and GetFloatv. */ public static final int GL_RESET_NOTIFICATION_STRATEGY = 0x8256; /** Returned by GetIntegerv and related simple queries when {@code value} is {@link #GL_RESET_NOTIFICATION_STRATEGY RESET_NOTIFICATION_STRATEGY}. */ public static final int GL_LOSE_CONTEXT_ON_RESET = 0x8252, GL_NO_RESET_NOTIFICATION = 0x8261; /** Returned by GetIntegerv when {@code pname} is CONTEXT_FLAGS. */ public static final int GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT = 0x4; /** Returned by {@link GL11#glGetError GetError}. */ public static final int GL_CONTEXT_LOST = 0x507; static { GL.initialize(); } protected GL45() { throw new UnsupportedOperationException(); } static boolean isAvailable(GLCapabilities caps, java.util.Set ext) { return checkFunctions( caps.glClipControl, caps.glCreateTransformFeedbacks, caps.glTransformFeedbackBufferBase, caps.glTransformFeedbackBufferRange, caps.glGetTransformFeedbackiv, caps.glGetTransformFeedbacki_v, caps.glGetTransformFeedbacki64_v, caps.glCreateBuffers, caps.glNamedBufferStorage, caps.glNamedBufferData, caps.glNamedBufferSubData, caps.glCopyNamedBufferSubData, caps.glClearNamedBufferData, caps.glClearNamedBufferSubData, caps.glMapNamedBuffer, caps.glMapNamedBufferRange, caps.glUnmapNamedBuffer, caps.glFlushMappedNamedBufferRange, caps.glGetNamedBufferParameteriv, caps.glGetNamedBufferParameteri64v, caps.glGetNamedBufferPointerv, caps.glGetNamedBufferSubData, caps.glCreateFramebuffers, caps.glNamedFramebufferRenderbuffer, caps.glNamedFramebufferParameteri, caps.glNamedFramebufferTexture, caps.glNamedFramebufferTextureLayer, caps.glNamedFramebufferDrawBuffer, caps.glNamedFramebufferDrawBuffers, caps.glNamedFramebufferReadBuffer, caps.glInvalidateNamedFramebufferData, caps.glInvalidateNamedFramebufferSubData, caps.glClearNamedFramebufferiv, caps.glClearNamedFramebufferuiv, caps.glClearNamedFramebufferfv, caps.glClearNamedFramebufferfi, caps.glBlitNamedFramebuffer, caps.glCheckNamedFramebufferStatus, caps.glGetNamedFramebufferParameteriv, caps.glGetNamedFramebufferAttachmentParameteriv, caps.glCreateRenderbuffers, caps.glNamedRenderbufferStorage, caps.glNamedRenderbufferStorageMultisample, caps.glGetNamedRenderbufferParameteriv, caps.glCreateTextures, caps.glTextureBuffer, caps.glTextureBufferRange, caps.glTextureStorage1D, caps.glTextureStorage2D, caps.glTextureStorage3D, caps.glTextureStorage2DMultisample, caps.glTextureStorage3DMultisample, caps.glTextureSubImage1D, caps.glTextureSubImage2D, caps.glTextureSubImage3D, caps.glCompressedTextureSubImage1D, caps.glCompressedTextureSubImage2D, caps.glCompressedTextureSubImage3D, caps.glCopyTextureSubImage1D, caps.glCopyTextureSubImage2D, caps.glCopyTextureSubImage3D, caps.glTextureParameterf, caps.glTextureParameterfv, caps.glTextureParameteri, caps.glTextureParameterIiv, caps.glTextureParameterIuiv, caps.glTextureParameteriv, caps.glGenerateTextureMipmap, caps.glBindTextureUnit, caps.glGetTextureImage, caps.glGetCompressedTextureImage, caps.glGetTextureLevelParameterfv, caps.glGetTextureLevelParameteriv, caps.glGetTextureParameterfv, caps.glGetTextureParameterIiv, caps.glGetTextureParameterIuiv, caps.glGetTextureParameteriv, caps.glCreateVertexArrays, caps.glDisableVertexArrayAttrib, caps.glEnableVertexArrayAttrib, caps.glVertexArrayElementBuffer, caps.glVertexArrayVertexBuffer, caps.glVertexArrayVertexBuffers, caps.glVertexArrayAttribFormat, caps.glVertexArrayAttribIFormat, caps.glVertexArrayAttribLFormat, caps.glVertexArrayAttribBinding, caps.glVertexArrayBindingDivisor, caps.glGetVertexArrayiv, caps.glGetVertexArrayIndexediv, caps.glGetVertexArrayIndexed64iv, caps.glCreateSamplers, caps.glCreateProgramPipelines, caps.glCreateQueries, caps.glGetQueryBufferObjectiv, caps.glGetQueryBufferObjectuiv, caps.glGetQueryBufferObjecti64v, caps.glGetQueryBufferObjectui64v, caps.glMemoryBarrierByRegion, caps.glGetTextureSubImage, caps.glGetCompressedTextureSubImage, caps.glTextureBarrier, caps.glGetGraphicsResetStatus, caps.glReadnPixels, caps.glGetnUniformfv, caps.glGetnUniformiv, caps.glGetnUniformuiv ); } // --- [ glClipControl ] --- /** *

Reference Page

* * Controls the clipping volume behavior. * *

These parameters update the clip control origin and depth mode respectively. The initial value of the clip control origin is {@link GL20#GL_LOWER_LEFT LOWER_LEFT} and the * initial value of the depth mode is {@link #GL_NEGATIVE_ONE_TO_ONE NEGATIVE_ONE_TO_ONE}.

* *

The error {@link GL11#GL_INVALID_OPERATION INVALID_OPERATION} is generated if ClipControl is executed between the execution of {@link GL11#glBegin Begin} and the corresponding * execution of {@link GL11#glEnd End}.

* * @param origin the clip origin. One of:
{@link GL20#GL_LOWER_LEFT LOWER_LEFT}{@link GL20#GL_UPPER_LEFT UPPER_LEFT}
* @param depth the clip depth mode. One of:
{@link #GL_NEGATIVE_ONE_TO_ONE NEGATIVE_ONE_TO_ONE}{@link #GL_ZERO_TO_ONE ZERO_TO_ONE}
*/ public static native void glClipControl(int origin, int depth); // --- [ glCreateTransformFeedbacks ] --- /** * Unsafe version of: {@link #glCreateTransformFeedbacks CreateTransformFeedbacks} * * @param n the number of transform feedback object names to create */ public static native void nglCreateTransformFeedbacks(int n, long ids); /** *

Reference Page

* * Returns {@code n} previously unused transform feedback object names in {@code ids}, each representing a new state vector. * * @param ids the buffer in which to return the names */ public static void glCreateTransformFeedbacks(IntBuffer ids) { nglCreateTransformFeedbacks(ids.remaining(), memAddress(ids)); } /** *

Reference Page

* * Returns {@code n} previously unused transform feedback object names in {@code ids}, each representing a new state vector. */ public static int glCreateTransformFeedbacks() { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer ids = stack.callocInt(1); nglCreateTransformFeedbacks(1, memAddress(ids)); return ids.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glTransformFeedbackBufferBase ] --- /** *

Reference Page

* * Binds a buffer object to a transform feedback object. * * @param xfb zero or the name of an existing transform feedback object * @param index the transform feedback stream index * @param buffer the name of an existing buffer object */ public static native void glTransformFeedbackBufferBase(int xfb, int index, int buffer); // --- [ glTransformFeedbackBufferRange ] --- /** *

Reference Page

* * Binds a region of a buffer object to a transform feedback object. * * @param xfb zero or the name of an existing transform feedback object * @param index the transform feedback stream index * @param buffer the name of an existing buffer object * @param offset the starting offset in basic machine units into the buffer object * @param size the amount of data in machine units */ public static native void glTransformFeedbackBufferRange(int xfb, int index, int buffer, long offset, long size); // --- [ glGetTransformFeedbackiv ] --- /** Unsafe version of: {@link #glGetTransformFeedbackiv GetTransformFeedbackiv} */ public static native void nglGetTransformFeedbackiv(int xfb, int pname, long param); /** *

Reference Page

* * Returns information about a transform feedback object. * * @param xfb zero or the name of an existing transform feedback object * @param pname the parameter to query. One of:
{@link GL42#GL_TRANSFORM_FEEDBACK_PAUSED TRANSFORM_FEEDBACK_PAUSED}{@link GL42#GL_TRANSFORM_FEEDBACK_ACTIVE TRANSFORM_FEEDBACK_ACTIVE}
* @param param the buffer in which to return the parameter value */ public static void glGetTransformFeedbackiv(int xfb, int pname, IntBuffer param) { if (CHECKS) { check(param, 1); } nglGetTransformFeedbackiv(xfb, pname, memAddress(param)); } /** *

Reference Page

* * Returns information about a transform feedback object. * * @param xfb zero or the name of an existing transform feedback object * @param pname the parameter to query. One of:
{@link GL42#GL_TRANSFORM_FEEDBACK_PAUSED TRANSFORM_FEEDBACK_PAUSED}{@link GL42#GL_TRANSFORM_FEEDBACK_ACTIVE TRANSFORM_FEEDBACK_ACTIVE}
*/ public static int glGetTransformFeedbacki(int xfb, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer param = stack.callocInt(1); nglGetTransformFeedbackiv(xfb, pname, memAddress(param)); return param.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetTransformFeedbacki_v ] --- /** Unsafe version of: {@link #glGetTransformFeedbacki_v GetTransformFeedbacki_v} */ public static native void nglGetTransformFeedbacki_v(int xfb, int pname, int index, long param); /** *

Reference Page

* * Returns information about a transform feedback object. * * @param xfb zero or the name of an existing transform feedback object * @param pname the parameter to query. Must be:
{@link GL30#GL_TRANSFORM_FEEDBACK_BUFFER_BINDING TRANSFORM_FEEDBACK_BUFFER_BINDING}
* @param index the transform feedback stream index * @param param the buffer in which to return the parameter value */ public static void glGetTransformFeedbacki_v(int xfb, int pname, int index, IntBuffer param) { if (CHECKS) { check(param, 1); } nglGetTransformFeedbacki_v(xfb, pname, index, memAddress(param)); } /** *

Reference Page

* * Returns information about a transform feedback object. * * @param xfb zero or the name of an existing transform feedback object * @param pname the parameter to query. Must be:
{@link GL30#GL_TRANSFORM_FEEDBACK_BUFFER_BINDING TRANSFORM_FEEDBACK_BUFFER_BINDING}
* @param index the transform feedback stream index */ public static int glGetTransformFeedbacki(int xfb, int pname, int index) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer param = stack.callocInt(1); nglGetTransformFeedbacki_v(xfb, pname, index, memAddress(param)); return param.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetTransformFeedbacki64_v ] --- /** Unsafe version of: {@link #glGetTransformFeedbacki64_v GetTransformFeedbacki64_v} */ public static native void nglGetTransformFeedbacki64_v(int xfb, int pname, int index, long param); /** *

Reference Page

* * Returns information about a transform feedback object. * * @param xfb zero or the name of an existing transform feedback object * @param pname the parameter to query. One of:
{@link GL30#GL_TRANSFORM_FEEDBACK_BUFFER_START TRANSFORM_FEEDBACK_BUFFER_START}{@link GL30#GL_TRANSFORM_FEEDBACK_BUFFER_SIZE TRANSFORM_FEEDBACK_BUFFER_SIZE}
* @param index the transform feedback stream index * @param param the buffer in which to return the parameter value */ public static void glGetTransformFeedbacki64_v(int xfb, int pname, int index, LongBuffer param) { if (CHECKS) { check(param, 1); } nglGetTransformFeedbacki64_v(xfb, pname, index, memAddress(param)); } /** *

Reference Page

* * Returns information about a transform feedback object. * * @param xfb zero or the name of an existing transform feedback object * @param pname the parameter to query. One of:
{@link GL30#GL_TRANSFORM_FEEDBACK_BUFFER_START TRANSFORM_FEEDBACK_BUFFER_START}{@link GL30#GL_TRANSFORM_FEEDBACK_BUFFER_SIZE TRANSFORM_FEEDBACK_BUFFER_SIZE}
* @param index the transform feedback stream index */ public static long glGetTransformFeedbacki64(int xfb, int pname, int index) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { LongBuffer param = stack.callocLong(1); nglGetTransformFeedbacki64_v(xfb, pname, index, memAddress(param)); return param.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glCreateBuffers ] --- /** * Unsafe version of: {@link #glCreateBuffers CreateBuffers} * * @param n the number of buffer names to create */ public static native void nglCreateBuffers(int n, long buffers); /** *

Reference Page

* * Returns {@code n} previously unused buffer names in {@code buffers}, each representing a new buffer object initialized as if it had been bound to an * unspecified target. * * @param buffers the buffer in which to return the names */ public static void glCreateBuffers(IntBuffer buffers) { nglCreateBuffers(buffers.remaining(), memAddress(buffers)); } /** *

Reference Page

* * Returns {@code n} previously unused buffer names in {@code buffers}, each representing a new buffer object initialized as if it had been bound to an * unspecified target. */ public static int glCreateBuffers() { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer buffers = stack.callocInt(1); nglCreateBuffers(1, memAddress(buffers)); return buffers.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glNamedBufferStorage ] --- /** * Unsafe version of: {@link #glNamedBufferStorage NamedBufferStorage} * * @param size the size of the data store in basic machine units */ public static native void nglNamedBufferStorage(int buffer, long size, long data, int flags); /** *

Reference Page

* * DSA version of {@link GL44#glBufferStorage BufferStorage}. * * @param buffer the buffer object name * @param size the size of the data store in basic machine units * @param flags the bitwise {@code OR} of flags describing the intended usage of the buffer object's data store by the application. Valid flags and their meanings * are as follows: * *
    *
  • {@link GL44#GL_DYNAMIC_STORAGE_BIT DYNAMIC_STORAGE_BIT} – The contents of the data store may be updated after creation through calls to * {@link GL15#glBufferSubData BufferSubData}. If this bit is not set, the buffer content may not be directly updated by the client. The {@code data} * argument may be used to specify the initial content of the buffer's data store regardless of the presence of the {@link GL44#GL_DYNAMIC_STORAGE_BIT DYNAMIC_STORAGE_BIT}. * Regardless of the presence of this bit, buffers may always be updated with server-side calls such as {@link GL31#glCopyBufferSubData CopyBufferSubData} and * {@link GL43#glClearBufferSubData ClearBufferSubData}.
  • *
  • {@link GL30#GL_MAP_READ_BIT MAP_READ_BIT} – The buffer's data store may be mapped by the client for read access and a pointer in the client's address space * obtained that may be read from.
  • *
  • {@link GL30#GL_MAP_WRITE_BIT MAP_WRITE_BIT} – The buffer's data store may be mapped by the client for write access and a pointer in the client's address * space obtained that may be written to.
  • *
  • {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT} – The client may request that the server read from or write to the buffer while it is mapped. The client's * pointer to the data store remains valid so long as the data store is mapped, even during execution of drawing or dispatch commands.
  • *
  • {@link GL44#GL_MAP_COHERENT_BIT MAP_COHERENT_BIT} – Shared access to buffers that are simultaneously mapped for client access and are used by the server will be * coherent, so long as that mapping is performed using MapBufferRange. That is, data written to the store by either the client or server will be * immediately visible to the other with no further action taken by the application. In particular: * *
      *
    • If {@code MAP_COHERENT_BIT} is not set and the client performs a write followed by a call to the {@link GL42#glMemoryBarrier MemoryBarrier} command with * the {@link GL44#GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT CLIENT_MAPPED_BUFFER_BARRIER_BIT} set, then in subsequent commands the server will see the writes.
    • *
    • If {@code MAP_COHERENT_BIT} is set and the client performs a write, then in subsequent commands the server will see the writes.
    • *
    • If {@code MAP_COHERENT_BIT} is not set and the server performs a write, the application must call {@link GL42#glMemoryBarrier MemoryBarrier} with the * {@link GL44#GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT CLIENT_MAPPED_BUFFER_BARRIER_BIT} set and then call {@link GL32#glFenceSync FenceSync} with {@link GL32#GL_SYNC_GPU_COMMANDS_COMPLETE SYNC_GPU_COMMANDS_COMPLETE} (or * {@link GL11#glFinish Finish}). Then the CPU will see the writes after the sync is complete.
    • *
    • If {@code MAP_COHERENT_BIT} is set and the server does a write, the app must call {@link GL32#glFenceSync FenceSync} with * {@link GL32#GL_SYNC_GPU_COMMANDS_COMPLETE SYNC_GPU_COMMANDS_COMPLETE} (or {@link GL11#glFinish Finish}). Then the CPU will see the writes after the sync is complete.
    • *
  • *
  • {@link GL44#GL_CLIENT_STORAGE_BIT CLIENT_STORAGE_BIT} – When all other criteria for the buffer storage allocation are met, this bit may be used by an * implementation to determine whether to use storage that is local to the server or to the client to serve as the backing store for the buffer.
  • *
* *

If {@code flags} contains {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT}, it must also contain at least one of {@link GL30#GL_MAP_READ_BIT MAP_READ_BIT} or {@link GL30#GL_MAP_WRITE_BIT MAP_WRITE_BIT}.

* *

It is an error to specify {@link GL44#GL_MAP_COHERENT_BIT MAP_COHERENT_BIT} without also specifying {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT}.

*/ public static void glNamedBufferStorage(int buffer, long size, int flags) { nglNamedBufferStorage(buffer, size, NULL, flags); } /** *

Reference Page

* * DSA version of {@link GL44#glBufferStorage BufferStorage}. * * @param buffer the buffer object name * @param data the address in client memory of the data that should be used to initialize the buffer's data store. If {@code data} is {@code NULL}, the data store of the * buffer is created, but contains undefined data. Otherwise, {@code data} should point to an array of at least {@code size} basic machine units. * @param flags the bitwise {@code OR} of flags describing the intended usage of the buffer object's data store by the application. Valid flags and their meanings * are as follows: * *
    *
  • {@link GL44#GL_DYNAMIC_STORAGE_BIT DYNAMIC_STORAGE_BIT} – The contents of the data store may be updated after creation through calls to * {@link GL15#glBufferSubData BufferSubData}. If this bit is not set, the buffer content may not be directly updated by the client. The {@code data} * argument may be used to specify the initial content of the buffer's data store regardless of the presence of the {@link GL44#GL_DYNAMIC_STORAGE_BIT DYNAMIC_STORAGE_BIT}. * Regardless of the presence of this bit, buffers may always be updated with server-side calls such as {@link GL31#glCopyBufferSubData CopyBufferSubData} and * {@link GL43#glClearBufferSubData ClearBufferSubData}.
  • *
  • {@link GL30#GL_MAP_READ_BIT MAP_READ_BIT} – The buffer's data store may be mapped by the client for read access and a pointer in the client's address space * obtained that may be read from.
  • *
  • {@link GL30#GL_MAP_WRITE_BIT MAP_WRITE_BIT} – The buffer's data store may be mapped by the client for write access and a pointer in the client's address * space obtained that may be written to.
  • *
  • {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT} – The client may request that the server read from or write to the buffer while it is mapped. The client's * pointer to the data store remains valid so long as the data store is mapped, even during execution of drawing or dispatch commands.
  • *
  • {@link GL44#GL_MAP_COHERENT_BIT MAP_COHERENT_BIT} – Shared access to buffers that are simultaneously mapped for client access and are used by the server will be * coherent, so long as that mapping is performed using MapBufferRange. That is, data written to the store by either the client or server will be * immediately visible to the other with no further action taken by the application. In particular: * *
      *
    • If {@code MAP_COHERENT_BIT} is not set and the client performs a write followed by a call to the {@link GL42#glMemoryBarrier MemoryBarrier} command with * the {@link GL44#GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT CLIENT_MAPPED_BUFFER_BARRIER_BIT} set, then in subsequent commands the server will see the writes.
    • *
    • If {@code MAP_COHERENT_BIT} is set and the client performs a write, then in subsequent commands the server will see the writes.
    • *
    • If {@code MAP_COHERENT_BIT} is not set and the server performs a write, the application must call {@link GL42#glMemoryBarrier MemoryBarrier} with the * {@link GL44#GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT CLIENT_MAPPED_BUFFER_BARRIER_BIT} set and then call {@link GL32#glFenceSync FenceSync} with {@link GL32#GL_SYNC_GPU_COMMANDS_COMPLETE SYNC_GPU_COMMANDS_COMPLETE} (or * {@link GL11#glFinish Finish}). Then the CPU will see the writes after the sync is complete.
    • *
    • If {@code MAP_COHERENT_BIT} is set and the server does a write, the app must call {@link GL32#glFenceSync FenceSync} with * {@link GL32#GL_SYNC_GPU_COMMANDS_COMPLETE SYNC_GPU_COMMANDS_COMPLETE} (or {@link GL11#glFinish Finish}). Then the CPU will see the writes after the sync is complete.
    • *
  • *
  • {@link GL44#GL_CLIENT_STORAGE_BIT CLIENT_STORAGE_BIT} – When all other criteria for the buffer storage allocation are met, this bit may be used by an * implementation to determine whether to use storage that is local to the server or to the client to serve as the backing store for the buffer.
  • *
* *

If {@code flags} contains {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT}, it must also contain at least one of {@link GL30#GL_MAP_READ_BIT MAP_READ_BIT} or {@link GL30#GL_MAP_WRITE_BIT MAP_WRITE_BIT}.

* *

It is an error to specify {@link GL44#GL_MAP_COHERENT_BIT MAP_COHERENT_BIT} without also specifying {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT}.

*/ public static void glNamedBufferStorage(int buffer, ByteBuffer data, int flags) { nglNamedBufferStorage(buffer, data.remaining(), memAddress(data), flags); } /** *

Reference Page

* * DSA version of {@link GL44#glBufferStorage BufferStorage}. * * @param buffer the buffer object name * @param data the address in client memory of the data that should be used to initialize the buffer's data store. If {@code data} is {@code NULL}, the data store of the * buffer is created, but contains undefined data. Otherwise, {@code data} should point to an array of at least {@code size} basic machine units. * @param flags the bitwise {@code OR} of flags describing the intended usage of the buffer object's data store by the application. Valid flags and their meanings * are as follows: * *
    *
  • {@link GL44#GL_DYNAMIC_STORAGE_BIT DYNAMIC_STORAGE_BIT} – The contents of the data store may be updated after creation through calls to * {@link GL15#glBufferSubData BufferSubData}. If this bit is not set, the buffer content may not be directly updated by the client. The {@code data} * argument may be used to specify the initial content of the buffer's data store regardless of the presence of the {@link GL44#GL_DYNAMIC_STORAGE_BIT DYNAMIC_STORAGE_BIT}. * Regardless of the presence of this bit, buffers may always be updated with server-side calls such as {@link GL31#glCopyBufferSubData CopyBufferSubData} and * {@link GL43#glClearBufferSubData ClearBufferSubData}.
  • *
  • {@link GL30#GL_MAP_READ_BIT MAP_READ_BIT} – The buffer's data store may be mapped by the client for read access and a pointer in the client's address space * obtained that may be read from.
  • *
  • {@link GL30#GL_MAP_WRITE_BIT MAP_WRITE_BIT} – The buffer's data store may be mapped by the client for write access and a pointer in the client's address * space obtained that may be written to.
  • *
  • {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT} – The client may request that the server read from or write to the buffer while it is mapped. The client's * pointer to the data store remains valid so long as the data store is mapped, even during execution of drawing or dispatch commands.
  • *
  • {@link GL44#GL_MAP_COHERENT_BIT MAP_COHERENT_BIT} – Shared access to buffers that are simultaneously mapped for client access and are used by the server will be * coherent, so long as that mapping is performed using MapBufferRange. That is, data written to the store by either the client or server will be * immediately visible to the other with no further action taken by the application. In particular: * *
      *
    • If {@code MAP_COHERENT_BIT} is not set and the client performs a write followed by a call to the {@link GL42#glMemoryBarrier MemoryBarrier} command with * the {@link GL44#GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT CLIENT_MAPPED_BUFFER_BARRIER_BIT} set, then in subsequent commands the server will see the writes.
    • *
    • If {@code MAP_COHERENT_BIT} is set and the client performs a write, then in subsequent commands the server will see the writes.
    • *
    • If {@code MAP_COHERENT_BIT} is not set and the server performs a write, the application must call {@link GL42#glMemoryBarrier MemoryBarrier} with the * {@link GL44#GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT CLIENT_MAPPED_BUFFER_BARRIER_BIT} set and then call {@link GL32#glFenceSync FenceSync} with {@link GL32#GL_SYNC_GPU_COMMANDS_COMPLETE SYNC_GPU_COMMANDS_COMPLETE} (or * {@link GL11#glFinish Finish}). Then the CPU will see the writes after the sync is complete.
    • *
    • If {@code MAP_COHERENT_BIT} is set and the server does a write, the app must call {@link GL32#glFenceSync FenceSync} with * {@link GL32#GL_SYNC_GPU_COMMANDS_COMPLETE SYNC_GPU_COMMANDS_COMPLETE} (or {@link GL11#glFinish Finish}). Then the CPU will see the writes after the sync is complete.
    • *
  • *
  • {@link GL44#GL_CLIENT_STORAGE_BIT CLIENT_STORAGE_BIT} – When all other criteria for the buffer storage allocation are met, this bit may be used by an * implementation to determine whether to use storage that is local to the server or to the client to serve as the backing store for the buffer.
  • *
* *

If {@code flags} contains {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT}, it must also contain at least one of {@link GL30#GL_MAP_READ_BIT MAP_READ_BIT} or {@link GL30#GL_MAP_WRITE_BIT MAP_WRITE_BIT}.

* *

It is an error to specify {@link GL44#GL_MAP_COHERENT_BIT MAP_COHERENT_BIT} without also specifying {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT}.

*/ public static void glNamedBufferStorage(int buffer, ShortBuffer data, int flags) { nglNamedBufferStorage(buffer, data.remaining() << 1, memAddress(data), flags); } /** *

Reference Page

* * DSA version of {@link GL44#glBufferStorage BufferStorage}. * * @param buffer the buffer object name * @param data the address in client memory of the data that should be used to initialize the buffer's data store. If {@code data} is {@code NULL}, the data store of the * buffer is created, but contains undefined data. Otherwise, {@code data} should point to an array of at least {@code size} basic machine units. * @param flags the bitwise {@code OR} of flags describing the intended usage of the buffer object's data store by the application. Valid flags and their meanings * are as follows: * *
    *
  • {@link GL44#GL_DYNAMIC_STORAGE_BIT DYNAMIC_STORAGE_BIT} – The contents of the data store may be updated after creation through calls to * {@link GL15#glBufferSubData BufferSubData}. If this bit is not set, the buffer content may not be directly updated by the client. The {@code data} * argument may be used to specify the initial content of the buffer's data store regardless of the presence of the {@link GL44#GL_DYNAMIC_STORAGE_BIT DYNAMIC_STORAGE_BIT}. * Regardless of the presence of this bit, buffers may always be updated with server-side calls such as {@link GL31#glCopyBufferSubData CopyBufferSubData} and * {@link GL43#glClearBufferSubData ClearBufferSubData}.
  • *
  • {@link GL30#GL_MAP_READ_BIT MAP_READ_BIT} – The buffer's data store may be mapped by the client for read access and a pointer in the client's address space * obtained that may be read from.
  • *
  • {@link GL30#GL_MAP_WRITE_BIT MAP_WRITE_BIT} – The buffer's data store may be mapped by the client for write access and a pointer in the client's address * space obtained that may be written to.
  • *
  • {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT} – The client may request that the server read from or write to the buffer while it is mapped. The client's * pointer to the data store remains valid so long as the data store is mapped, even during execution of drawing or dispatch commands.
  • *
  • {@link GL44#GL_MAP_COHERENT_BIT MAP_COHERENT_BIT} – Shared access to buffers that are simultaneously mapped for client access and are used by the server will be * coherent, so long as that mapping is performed using MapBufferRange. That is, data written to the store by either the client or server will be * immediately visible to the other with no further action taken by the application. In particular: * *
      *
    • If {@code MAP_COHERENT_BIT} is not set and the client performs a write followed by a call to the {@link GL42#glMemoryBarrier MemoryBarrier} command with * the {@link GL44#GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT CLIENT_MAPPED_BUFFER_BARRIER_BIT} set, then in subsequent commands the server will see the writes.
    • *
    • If {@code MAP_COHERENT_BIT} is set and the client performs a write, then in subsequent commands the server will see the writes.
    • *
    • If {@code MAP_COHERENT_BIT} is not set and the server performs a write, the application must call {@link GL42#glMemoryBarrier MemoryBarrier} with the * {@link GL44#GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT CLIENT_MAPPED_BUFFER_BARRIER_BIT} set and then call {@link GL32#glFenceSync FenceSync} with {@link GL32#GL_SYNC_GPU_COMMANDS_COMPLETE SYNC_GPU_COMMANDS_COMPLETE} (or * {@link GL11#glFinish Finish}). Then the CPU will see the writes after the sync is complete.
    • *
    • If {@code MAP_COHERENT_BIT} is set and the server does a write, the app must call {@link GL32#glFenceSync FenceSync} with * {@link GL32#GL_SYNC_GPU_COMMANDS_COMPLETE SYNC_GPU_COMMANDS_COMPLETE} (or {@link GL11#glFinish Finish}). Then the CPU will see the writes after the sync is complete.
    • *
  • *
  • {@link GL44#GL_CLIENT_STORAGE_BIT CLIENT_STORAGE_BIT} – When all other criteria for the buffer storage allocation are met, this bit may be used by an * implementation to determine whether to use storage that is local to the server or to the client to serve as the backing store for the buffer.
  • *
* *

If {@code flags} contains {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT}, it must also contain at least one of {@link GL30#GL_MAP_READ_BIT MAP_READ_BIT} or {@link GL30#GL_MAP_WRITE_BIT MAP_WRITE_BIT}.

* *

It is an error to specify {@link GL44#GL_MAP_COHERENT_BIT MAP_COHERENT_BIT} without also specifying {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT}.

*/ public static void glNamedBufferStorage(int buffer, IntBuffer data, int flags) { nglNamedBufferStorage(buffer, data.remaining() << 2, memAddress(data), flags); } /** *

Reference Page

* * DSA version of {@link GL44#glBufferStorage BufferStorage}. * * @param buffer the buffer object name * @param data the address in client memory of the data that should be used to initialize the buffer's data store. If {@code data} is {@code NULL}, the data store of the * buffer is created, but contains undefined data. Otherwise, {@code data} should point to an array of at least {@code size} basic machine units. * @param flags the bitwise {@code OR} of flags describing the intended usage of the buffer object's data store by the application. Valid flags and their meanings * are as follows: * *
    *
  • {@link GL44#GL_DYNAMIC_STORAGE_BIT DYNAMIC_STORAGE_BIT} – The contents of the data store may be updated after creation through calls to * {@link GL15#glBufferSubData BufferSubData}. If this bit is not set, the buffer content may not be directly updated by the client. The {@code data} * argument may be used to specify the initial content of the buffer's data store regardless of the presence of the {@link GL44#GL_DYNAMIC_STORAGE_BIT DYNAMIC_STORAGE_BIT}. * Regardless of the presence of this bit, buffers may always be updated with server-side calls such as {@link GL31#glCopyBufferSubData CopyBufferSubData} and * {@link GL43#glClearBufferSubData ClearBufferSubData}.
  • *
  • {@link GL30#GL_MAP_READ_BIT MAP_READ_BIT} – The buffer's data store may be mapped by the client for read access and a pointer in the client's address space * obtained that may be read from.
  • *
  • {@link GL30#GL_MAP_WRITE_BIT MAP_WRITE_BIT} – The buffer's data store may be mapped by the client for write access and a pointer in the client's address * space obtained that may be written to.
  • *
  • {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT} – The client may request that the server read from or write to the buffer while it is mapped. The client's * pointer to the data store remains valid so long as the data store is mapped, even during execution of drawing or dispatch commands.
  • *
  • {@link GL44#GL_MAP_COHERENT_BIT MAP_COHERENT_BIT} – Shared access to buffers that are simultaneously mapped for client access and are used by the server will be * coherent, so long as that mapping is performed using MapBufferRange. That is, data written to the store by either the client or server will be * immediately visible to the other with no further action taken by the application. In particular: * *
      *
    • If {@code MAP_COHERENT_BIT} is not set and the client performs a write followed by a call to the {@link GL42#glMemoryBarrier MemoryBarrier} command with * the {@link GL44#GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT CLIENT_MAPPED_BUFFER_BARRIER_BIT} set, then in subsequent commands the server will see the writes.
    • *
    • If {@code MAP_COHERENT_BIT} is set and the client performs a write, then in subsequent commands the server will see the writes.
    • *
    • If {@code MAP_COHERENT_BIT} is not set and the server performs a write, the application must call {@link GL42#glMemoryBarrier MemoryBarrier} with the * {@link GL44#GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT CLIENT_MAPPED_BUFFER_BARRIER_BIT} set and then call {@link GL32#glFenceSync FenceSync} with {@link GL32#GL_SYNC_GPU_COMMANDS_COMPLETE SYNC_GPU_COMMANDS_COMPLETE} (or * {@link GL11#glFinish Finish}). Then the CPU will see the writes after the sync is complete.
    • *
    • If {@code MAP_COHERENT_BIT} is set and the server does a write, the app must call {@link GL32#glFenceSync FenceSync} with * {@link GL32#GL_SYNC_GPU_COMMANDS_COMPLETE SYNC_GPU_COMMANDS_COMPLETE} (or {@link GL11#glFinish Finish}). Then the CPU will see the writes after the sync is complete.
    • *
  • *
  • {@link GL44#GL_CLIENT_STORAGE_BIT CLIENT_STORAGE_BIT} – When all other criteria for the buffer storage allocation are met, this bit may be used by an * implementation to determine whether to use storage that is local to the server or to the client to serve as the backing store for the buffer.
  • *
* *

If {@code flags} contains {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT}, it must also contain at least one of {@link GL30#GL_MAP_READ_BIT MAP_READ_BIT} or {@link GL30#GL_MAP_WRITE_BIT MAP_WRITE_BIT}.

* *

It is an error to specify {@link GL44#GL_MAP_COHERENT_BIT MAP_COHERENT_BIT} without also specifying {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT}.

*/ public static void glNamedBufferStorage(int buffer, FloatBuffer data, int flags) { nglNamedBufferStorage(buffer, data.remaining() << 2, memAddress(data), flags); } /** *

Reference Page

* * DSA version of {@link GL44#glBufferStorage BufferStorage}. * * @param buffer the buffer object name * @param data the address in client memory of the data that should be used to initialize the buffer's data store. If {@code data} is {@code NULL}, the data store of the * buffer is created, but contains undefined data. Otherwise, {@code data} should point to an array of at least {@code size} basic machine units. * @param flags the bitwise {@code OR} of flags describing the intended usage of the buffer object's data store by the application. Valid flags and their meanings * are as follows: * *
    *
  • {@link GL44#GL_DYNAMIC_STORAGE_BIT DYNAMIC_STORAGE_BIT} – The contents of the data store may be updated after creation through calls to * {@link GL15#glBufferSubData BufferSubData}. If this bit is not set, the buffer content may not be directly updated by the client. The {@code data} * argument may be used to specify the initial content of the buffer's data store regardless of the presence of the {@link GL44#GL_DYNAMIC_STORAGE_BIT DYNAMIC_STORAGE_BIT}. * Regardless of the presence of this bit, buffers may always be updated with server-side calls such as {@link GL31#glCopyBufferSubData CopyBufferSubData} and * {@link GL43#glClearBufferSubData ClearBufferSubData}.
  • *
  • {@link GL30#GL_MAP_READ_BIT MAP_READ_BIT} – The buffer's data store may be mapped by the client for read access and a pointer in the client's address space * obtained that may be read from.
  • *
  • {@link GL30#GL_MAP_WRITE_BIT MAP_WRITE_BIT} – The buffer's data store may be mapped by the client for write access and a pointer in the client's address * space obtained that may be written to.
  • *
  • {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT} – The client may request that the server read from or write to the buffer while it is mapped. The client's * pointer to the data store remains valid so long as the data store is mapped, even during execution of drawing or dispatch commands.
  • *
  • {@link GL44#GL_MAP_COHERENT_BIT MAP_COHERENT_BIT} – Shared access to buffers that are simultaneously mapped for client access and are used by the server will be * coherent, so long as that mapping is performed using MapBufferRange. That is, data written to the store by either the client or server will be * immediately visible to the other with no further action taken by the application. In particular: * *
      *
    • If {@code MAP_COHERENT_BIT} is not set and the client performs a write followed by a call to the {@link GL42#glMemoryBarrier MemoryBarrier} command with * the {@link GL44#GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT CLIENT_MAPPED_BUFFER_BARRIER_BIT} set, then in subsequent commands the server will see the writes.
    • *
    • If {@code MAP_COHERENT_BIT} is set and the client performs a write, then in subsequent commands the server will see the writes.
    • *
    • If {@code MAP_COHERENT_BIT} is not set and the server performs a write, the application must call {@link GL42#glMemoryBarrier MemoryBarrier} with the * {@link GL44#GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT CLIENT_MAPPED_BUFFER_BARRIER_BIT} set and then call {@link GL32#glFenceSync FenceSync} with {@link GL32#GL_SYNC_GPU_COMMANDS_COMPLETE SYNC_GPU_COMMANDS_COMPLETE} (or * {@link GL11#glFinish Finish}). Then the CPU will see the writes after the sync is complete.
    • *
    • If {@code MAP_COHERENT_BIT} is set and the server does a write, the app must call {@link GL32#glFenceSync FenceSync} with * {@link GL32#GL_SYNC_GPU_COMMANDS_COMPLETE SYNC_GPU_COMMANDS_COMPLETE} (or {@link GL11#glFinish Finish}). Then the CPU will see the writes after the sync is complete.
    • *
  • *
  • {@link GL44#GL_CLIENT_STORAGE_BIT CLIENT_STORAGE_BIT} – When all other criteria for the buffer storage allocation are met, this bit may be used by an * implementation to determine whether to use storage that is local to the server or to the client to serve as the backing store for the buffer.
  • *
* *

If {@code flags} contains {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT}, it must also contain at least one of {@link GL30#GL_MAP_READ_BIT MAP_READ_BIT} or {@link GL30#GL_MAP_WRITE_BIT MAP_WRITE_BIT}.

* *

It is an error to specify {@link GL44#GL_MAP_COHERENT_BIT MAP_COHERENT_BIT} without also specifying {@link GL44#GL_MAP_PERSISTENT_BIT MAP_PERSISTENT_BIT}.

*/ public static void glNamedBufferStorage(int buffer, DoubleBuffer data, int flags) { nglNamedBufferStorage(buffer, data.remaining() << 3, memAddress(data), flags); } // --- [ glNamedBufferData ] --- /** * Unsafe version of: {@link #glNamedBufferData NamedBufferData} * * @param size the size in bytes of the buffer object's new data store */ public static native void nglNamedBufferData(int buffer, long size, long data, int usage); /** *

Reference Page

* * DSA version of {@link GL15#glBufferData BufferData}. * * @param buffer * @param size the size in bytes of the buffer object's new data store * @param usage the expected usage pattern of the data store. One of:
{@link GL15#GL_STREAM_DRAW STREAM_DRAW}{@link GL15#GL_STREAM_READ STREAM_READ}{@link GL15#GL_STREAM_COPY STREAM_COPY}{@link GL15#GL_STATIC_DRAW STATIC_DRAW}{@link GL15#GL_STATIC_READ STATIC_READ}{@link GL15#GL_STATIC_COPY STATIC_COPY}{@link GL15#GL_DYNAMIC_DRAW DYNAMIC_DRAW}
{@link GL15#GL_DYNAMIC_READ DYNAMIC_READ}{@link GL15#GL_DYNAMIC_COPY DYNAMIC_COPY}
*/ public static void glNamedBufferData(int buffer, long size, int usage) { nglNamedBufferData(buffer, size, NULL, usage); } /** *

Reference Page

* * DSA version of {@link GL15#glBufferData BufferData}. * * @param buffer * @param data a pointer to data that will be copied into the data store for initialization, or {@code NULL} if no data is to be copied * @param usage the expected usage pattern of the data store. One of:
{@link GL15#GL_STREAM_DRAW STREAM_DRAW}{@link GL15#GL_STREAM_READ STREAM_READ}{@link GL15#GL_STREAM_COPY STREAM_COPY}{@link GL15#GL_STATIC_DRAW STATIC_DRAW}{@link GL15#GL_STATIC_READ STATIC_READ}{@link GL15#GL_STATIC_COPY STATIC_COPY}{@link GL15#GL_DYNAMIC_DRAW DYNAMIC_DRAW}
{@link GL15#GL_DYNAMIC_READ DYNAMIC_READ}{@link GL15#GL_DYNAMIC_COPY DYNAMIC_COPY}
*/ public static void glNamedBufferData(int buffer, ByteBuffer data, int usage) { nglNamedBufferData(buffer, data.remaining(), memAddress(data), usage); } /** *

Reference Page

* * DSA version of {@link GL15#glBufferData BufferData}. * * @param buffer * @param data a pointer to data that will be copied into the data store for initialization, or {@code NULL} if no data is to be copied * @param usage the expected usage pattern of the data store. One of:
{@link GL15#GL_STREAM_DRAW STREAM_DRAW}{@link GL15#GL_STREAM_READ STREAM_READ}{@link GL15#GL_STREAM_COPY STREAM_COPY}{@link GL15#GL_STATIC_DRAW STATIC_DRAW}{@link GL15#GL_STATIC_READ STATIC_READ}{@link GL15#GL_STATIC_COPY STATIC_COPY}{@link GL15#GL_DYNAMIC_DRAW DYNAMIC_DRAW}
{@link GL15#GL_DYNAMIC_READ DYNAMIC_READ}{@link GL15#GL_DYNAMIC_COPY DYNAMIC_COPY}
*/ public static void glNamedBufferData(int buffer, ShortBuffer data, int usage) { nglNamedBufferData(buffer, data.remaining() << 1, memAddress(data), usage); } /** *

Reference Page

* * DSA version of {@link GL15#glBufferData BufferData}. * * @param buffer * @param data a pointer to data that will be copied into the data store for initialization, or {@code NULL} if no data is to be copied * @param usage the expected usage pattern of the data store. One of:
{@link GL15#GL_STREAM_DRAW STREAM_DRAW}{@link GL15#GL_STREAM_READ STREAM_READ}{@link GL15#GL_STREAM_COPY STREAM_COPY}{@link GL15#GL_STATIC_DRAW STATIC_DRAW}{@link GL15#GL_STATIC_READ STATIC_READ}{@link GL15#GL_STATIC_COPY STATIC_COPY}{@link GL15#GL_DYNAMIC_DRAW DYNAMIC_DRAW}
{@link GL15#GL_DYNAMIC_READ DYNAMIC_READ}{@link GL15#GL_DYNAMIC_COPY DYNAMIC_COPY}
*/ public static void glNamedBufferData(int buffer, IntBuffer data, int usage) { nglNamedBufferData(buffer, data.remaining() << 2, memAddress(data), usage); } /** *

Reference Page

* * DSA version of {@link GL15#glBufferData BufferData}. * * @param buffer * @param data a pointer to data that will be copied into the data store for initialization, or {@code NULL} if no data is to be copied * @param usage the expected usage pattern of the data store. One of:
{@link GL15#GL_STREAM_DRAW STREAM_DRAW}{@link GL15#GL_STREAM_READ STREAM_READ}{@link GL15#GL_STREAM_COPY STREAM_COPY}{@link GL15#GL_STATIC_DRAW STATIC_DRAW}{@link GL15#GL_STATIC_READ STATIC_READ}{@link GL15#GL_STATIC_COPY STATIC_COPY}{@link GL15#GL_DYNAMIC_DRAW DYNAMIC_DRAW}
{@link GL15#GL_DYNAMIC_READ DYNAMIC_READ}{@link GL15#GL_DYNAMIC_COPY DYNAMIC_COPY}
*/ public static void glNamedBufferData(int buffer, FloatBuffer data, int usage) { nglNamedBufferData(buffer, data.remaining() << 2, memAddress(data), usage); } /** *

Reference Page

* * DSA version of {@link GL15#glBufferData BufferData}. * * @param buffer * @param data a pointer to data that will be copied into the data store for initialization, or {@code NULL} if no data is to be copied * @param usage the expected usage pattern of the data store. One of:
{@link GL15#GL_STREAM_DRAW STREAM_DRAW}{@link GL15#GL_STREAM_READ STREAM_READ}{@link GL15#GL_STREAM_COPY STREAM_COPY}{@link GL15#GL_STATIC_DRAW STATIC_DRAW}{@link GL15#GL_STATIC_READ STATIC_READ}{@link GL15#GL_STATIC_COPY STATIC_COPY}{@link GL15#GL_DYNAMIC_DRAW DYNAMIC_DRAW}
{@link GL15#GL_DYNAMIC_READ DYNAMIC_READ}{@link GL15#GL_DYNAMIC_COPY DYNAMIC_COPY}
*/ public static void glNamedBufferData(int buffer, DoubleBuffer data, int usage) { nglNamedBufferData(buffer, data.remaining() << 3, memAddress(data), usage); } // --- [ glNamedBufferSubData ] --- /** * Unsafe version of: {@link #glNamedBufferSubData NamedBufferSubData} * * @param size the size in bytes of the data store region being replaced */ public static native void nglNamedBufferSubData(int buffer, long offset, long size, long data); /** *

Reference Page

* * DSA version of {@link GL15#glBufferSubData BufferSubData}. * * @param buffer * @param offset the offset into the buffer object's data store where data replacement will begin, measured in bytes * @param data a pointer to the new data that will be copied into the data store */ public static void glNamedBufferSubData(int buffer, long offset, ByteBuffer data) { nglNamedBufferSubData(buffer, offset, data.remaining(), memAddress(data)); } /** *

Reference Page

* * DSA version of {@link GL15#glBufferSubData BufferSubData}. * * @param buffer * @param offset the offset into the buffer object's data store where data replacement will begin, measured in bytes * @param data a pointer to the new data that will be copied into the data store */ public static void glNamedBufferSubData(int buffer, long offset, ShortBuffer data) { nglNamedBufferSubData(buffer, offset, data.remaining() << 1, memAddress(data)); } /** *

Reference Page

* * DSA version of {@link GL15#glBufferSubData BufferSubData}. * * @param buffer * @param offset the offset into the buffer object's data store where data replacement will begin, measured in bytes * @param data a pointer to the new data that will be copied into the data store */ public static void glNamedBufferSubData(int buffer, long offset, IntBuffer data) { nglNamedBufferSubData(buffer, offset, data.remaining() << 2, memAddress(data)); } /** *

Reference Page

* * DSA version of {@link GL15#glBufferSubData BufferSubData}. * * @param buffer * @param offset the offset into the buffer object's data store where data replacement will begin, measured in bytes * @param data a pointer to the new data that will be copied into the data store */ public static void glNamedBufferSubData(int buffer, long offset, FloatBuffer data) { nglNamedBufferSubData(buffer, offset, data.remaining() << 2, memAddress(data)); } /** *

Reference Page

* * DSA version of {@link GL15#glBufferSubData BufferSubData}. * * @param buffer * @param offset the offset into the buffer object's data store where data replacement will begin, measured in bytes * @param data a pointer to the new data that will be copied into the data store */ public static void glNamedBufferSubData(int buffer, long offset, DoubleBuffer data) { nglNamedBufferSubData(buffer, offset, data.remaining() << 3, memAddress(data)); } // --- [ glCopyNamedBufferSubData ] --- /** *

Reference Page

* * DSA version of {@link GL31#glCopyBufferSubData CopyBufferSubData}. * * @param readBuffer the source buffer object name * @param writeBuffer the destination buffer object name * @param readOffset the source buffer object offset, in bytes * @param writeOffset the destination buffer object offset, in bytes * @param size the number of bytes to copy */ public static native void glCopyNamedBufferSubData(int readBuffer, int writeBuffer, long readOffset, long writeOffset, long size); // --- [ glClearNamedBufferData ] --- /** Unsafe version of: {@link #glClearNamedBufferData ClearNamedBufferData} */ public static native void nglClearNamedBufferData(int buffer, int internalformat, int format, int type, long data); /** *

Reference Page

* * DSA version of {@link GL43#glClearBufferData ClearBufferData}. * * @param buffer the buffer object name * @param internalformat the internal format with which the data will be stored in the buffer object * @param format the format of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the type of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param data the buffer containing the data to be used as the source of the constant fill value. The elements of data are converted by the GL into the format * specified by internalformat, and then used to fill the specified range of the destination buffer. If data is {@code NULL}, then it is ignored and the * sub-range of the buffer is filled with zeros. */ public static void glClearNamedBufferData(int buffer, int internalformat, int format, int type, ByteBuffer data) { nglClearNamedBufferData(buffer, internalformat, format, type, memAddressSafe(data)); } /** *

Reference Page

* * DSA version of {@link GL43#glClearBufferData ClearBufferData}. * * @param buffer the buffer object name * @param internalformat the internal format with which the data will be stored in the buffer object * @param format the format of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the type of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param data the buffer containing the data to be used as the source of the constant fill value. The elements of data are converted by the GL into the format * specified by internalformat, and then used to fill the specified range of the destination buffer. If data is {@code NULL}, then it is ignored and the * sub-range of the buffer is filled with zeros. */ public static void glClearNamedBufferData(int buffer, int internalformat, int format, int type, ShortBuffer data) { nglClearNamedBufferData(buffer, internalformat, format, type, memAddressSafe(data)); } /** *

Reference Page

* * DSA version of {@link GL43#glClearBufferData ClearBufferData}. * * @param buffer the buffer object name * @param internalformat the internal format with which the data will be stored in the buffer object * @param format the format of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the type of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param data the buffer containing the data to be used as the source of the constant fill value. The elements of data are converted by the GL into the format * specified by internalformat, and then used to fill the specified range of the destination buffer. If data is {@code NULL}, then it is ignored and the * sub-range of the buffer is filled with zeros. */ public static void glClearNamedBufferData(int buffer, int internalformat, int format, int type, IntBuffer data) { nglClearNamedBufferData(buffer, internalformat, format, type, memAddressSafe(data)); } /** *

Reference Page

* * DSA version of {@link GL43#glClearBufferData ClearBufferData}. * * @param buffer the buffer object name * @param internalformat the internal format with which the data will be stored in the buffer object * @param format the format of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the type of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param data the buffer containing the data to be used as the source of the constant fill value. The elements of data are converted by the GL into the format * specified by internalformat, and then used to fill the specified range of the destination buffer. If data is {@code NULL}, then it is ignored and the * sub-range of the buffer is filled with zeros. */ public static void glClearNamedBufferData(int buffer, int internalformat, int format, int type, FloatBuffer data) { nglClearNamedBufferData(buffer, internalformat, format, type, memAddressSafe(data)); } // --- [ glClearNamedBufferSubData ] --- /** Unsafe version of: {@link #glClearNamedBufferSubData ClearNamedBufferSubData} */ public static native void nglClearNamedBufferSubData(int buffer, int internalformat, long offset, long size, int format, int type, long data); /** *

Reference Page

* * DSA version of {@link GL43#glClearBufferSubData ClearBufferSubData}. * * @param buffer the buffer object name * @param internalformat the internal format with which the data will be stored in the buffer object * @param offset the offset, in basic machine units into the buffer object's data store at which to start filling * @param size the size, in basic machine units of the range of the data store to fill * @param format the format of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the type of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param data the buffer containing the data to be used as the source of the constant fill value. The elements of data are converted by the GL into the format * specified by internalformat, and then used to fill the specified range of the destination buffer. If data is {@code NULL}, then it is ignored and the * sub-range of the buffer is filled with zeros. */ public static void glClearNamedBufferSubData(int buffer, int internalformat, long offset, long size, int format, int type, ByteBuffer data) { nglClearNamedBufferSubData(buffer, internalformat, offset, size, format, type, memAddressSafe(data)); } /** *

Reference Page

* * DSA version of {@link GL43#glClearBufferSubData ClearBufferSubData}. * * @param buffer the buffer object name * @param internalformat the internal format with which the data will be stored in the buffer object * @param offset the offset, in basic machine units into the buffer object's data store at which to start filling * @param size the size, in basic machine units of the range of the data store to fill * @param format the format of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the type of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param data the buffer containing the data to be used as the source of the constant fill value. The elements of data are converted by the GL into the format * specified by internalformat, and then used to fill the specified range of the destination buffer. If data is {@code NULL}, then it is ignored and the * sub-range of the buffer is filled with zeros. */ public static void glClearNamedBufferSubData(int buffer, int internalformat, long offset, long size, int format, int type, ShortBuffer data) { nglClearNamedBufferSubData(buffer, internalformat, offset, size, format, type, memAddressSafe(data)); } /** *

Reference Page

* * DSA version of {@link GL43#glClearBufferSubData ClearBufferSubData}. * * @param buffer the buffer object name * @param internalformat the internal format with which the data will be stored in the buffer object * @param offset the offset, in basic machine units into the buffer object's data store at which to start filling * @param size the size, in basic machine units of the range of the data store to fill * @param format the format of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the type of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param data the buffer containing the data to be used as the source of the constant fill value. The elements of data are converted by the GL into the format * specified by internalformat, and then used to fill the specified range of the destination buffer. If data is {@code NULL}, then it is ignored and the * sub-range of the buffer is filled with zeros. */ public static void glClearNamedBufferSubData(int buffer, int internalformat, long offset, long size, int format, int type, IntBuffer data) { nglClearNamedBufferSubData(buffer, internalformat, offset, size, format, type, memAddressSafe(data)); } /** *

Reference Page

* * DSA version of {@link GL43#glClearBufferSubData ClearBufferSubData}. * * @param buffer the buffer object name * @param internalformat the internal format with which the data will be stored in the buffer object * @param offset the offset, in basic machine units into the buffer object's data store at which to start filling * @param size the size, in basic machine units of the range of the data store to fill * @param format the format of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the type of the data in memory addressed by {@code data}. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param data the buffer containing the data to be used as the source of the constant fill value. The elements of data are converted by the GL into the format * specified by internalformat, and then used to fill the specified range of the destination buffer. If data is {@code NULL}, then it is ignored and the * sub-range of the buffer is filled with zeros. */ public static void glClearNamedBufferSubData(int buffer, int internalformat, long offset, long size, int format, int type, FloatBuffer data) { nglClearNamedBufferSubData(buffer, internalformat, offset, size, format, type, memAddressSafe(data)); } // --- [ glMapNamedBuffer ] --- /** Unsafe version of: {@link #glMapNamedBuffer MapNamedBuffer} */ public static native long nglMapNamedBuffer(int buffer, int access); /** *

Reference Page

* * DSA version of {@link GL15#glMapBuffer MapBuffer}. * * @param buffer the buffer object name * @param access the access policy, indicating whether it will be possible to read from, write to, or both read from and write to the buffer object's mapped data store. One of:
{@link GL15#GL_READ_ONLY READ_ONLY}{@link GL15#GL_WRITE_ONLY WRITE_ONLY}{@link GL15#GL_READ_WRITE READ_WRITE}
*/ public static ByteBuffer glMapNamedBuffer(int buffer, int access) { long __result = nglMapNamedBuffer(buffer, access); return memByteBuffer(__result, glGetNamedBufferParameteri(buffer, GL15.GL_BUFFER_SIZE)); } /** *

Reference Page

* * DSA version of {@link GL15#glMapBuffer MapBuffer}. * * @param buffer the buffer object name * @param access the access policy, indicating whether it will be possible to read from, write to, or both read from and write to the buffer object's mapped data store. One of:
{@link GL15#GL_READ_ONLY READ_ONLY}{@link GL15#GL_WRITE_ONLY WRITE_ONLY}{@link GL15#GL_READ_WRITE READ_WRITE}
*/ public static ByteBuffer glMapNamedBuffer(int buffer, int access, ByteBuffer old_buffer) { long __result = nglMapNamedBuffer(buffer, access); int length = glGetNamedBufferParameteri(buffer, GL15.GL_BUFFER_SIZE); return apiGetMappedBuffer(old_buffer, __result, length); } /** *

Reference Page

* * DSA version of {@link GL15#glMapBuffer MapBuffer}. * * @param buffer the buffer object name * @param access the access policy, indicating whether it will be possible to read from, write to, or both read from and write to the buffer object's mapped data store. One of:
{@link GL15#GL_READ_ONLY READ_ONLY}{@link GL15#GL_WRITE_ONLY WRITE_ONLY}{@link GL15#GL_READ_WRITE READ_WRITE}
*/ public static ByteBuffer glMapNamedBuffer(int buffer, int access, long length, ByteBuffer old_buffer) { long __result = nglMapNamedBuffer(buffer, access); return apiGetMappedBuffer(old_buffer, __result, (int)length); } // --- [ glMapNamedBufferRange ] --- /** Unsafe version of: {@link #glMapNamedBufferRange MapNamedBufferRange} */ public static native long nglMapNamedBufferRange(int buffer, long offset, long length, int access); /** *

Reference Page

* * DSA version of {@link GL30#glMapBufferRange MapBufferRange}. * * @param buffer the buffer object name * @param offset the starting offset within the buffer of the range to be mapped * @param length the length of the range to be mapped * @param access a combination of access flags indicating the desired access to the range. One or more of:
{@link GL30#GL_MAP_READ_BIT MAP_READ_BIT}{@link GL30#GL_MAP_WRITE_BIT MAP_WRITE_BIT}{@link GL30#GL_MAP_INVALIDATE_RANGE_BIT MAP_INVALIDATE_RANGE_BIT}{@link GL30#GL_MAP_INVALIDATE_BUFFER_BIT MAP_INVALIDATE_BUFFER_BIT}
{@link GL30#GL_MAP_FLUSH_EXPLICIT_BIT MAP_FLUSH_EXPLICIT_BIT}{@link GL30#GL_MAP_UNSYNCHRONIZED_BIT MAP_UNSYNCHRONIZED_BIT}
*/ public static ByteBuffer glMapNamedBufferRange(int buffer, long offset, long length, int access) { long __result = nglMapNamedBufferRange(buffer, offset, length, access); return memByteBuffer(__result, (int)length); } /** *

Reference Page

* * DSA version of {@link GL30#glMapBufferRange MapBufferRange}. * * @param buffer the buffer object name * @param offset the starting offset within the buffer of the range to be mapped * @param length the length of the range to be mapped * @param access a combination of access flags indicating the desired access to the range. One or more of:
{@link GL30#GL_MAP_READ_BIT MAP_READ_BIT}{@link GL30#GL_MAP_WRITE_BIT MAP_WRITE_BIT}{@link GL30#GL_MAP_INVALIDATE_RANGE_BIT MAP_INVALIDATE_RANGE_BIT}{@link GL30#GL_MAP_INVALIDATE_BUFFER_BIT MAP_INVALIDATE_BUFFER_BIT}
{@link GL30#GL_MAP_FLUSH_EXPLICIT_BIT MAP_FLUSH_EXPLICIT_BIT}{@link GL30#GL_MAP_UNSYNCHRONIZED_BIT MAP_UNSYNCHRONIZED_BIT}
*/ public static ByteBuffer glMapNamedBufferRange(int buffer, long offset, long length, int access, ByteBuffer old_buffer) { long __result = nglMapNamedBufferRange(buffer, offset, length, access); return apiGetMappedBuffer(old_buffer, __result, (int)length); } // --- [ glUnmapNamedBuffer ] --- /** *

Reference Page

* * DSA version of {@link GL15#glUnmapBuffer UnmapBuffer}. * * @param buffer the buffer object name */ public static native boolean glUnmapNamedBuffer(int buffer); // --- [ glFlushMappedNamedBufferRange ] --- /** *

Reference Page

* * DSA version of {@link GL30#glFlushMappedBufferRange FlushMappedBufferRange}. * * @param buffer the buffer object name * @param offset the start of the buffer subrange, in basic machine units * @param length the length of the buffer subrange, in basic machine units */ public static native void glFlushMappedNamedBufferRange(int buffer, long offset, long length); // --- [ glGetNamedBufferParameteriv ] --- /** Unsafe version of: {@link #glGetNamedBufferParameteriv GetNamedBufferParameteriv} */ public static native void nglGetNamedBufferParameteriv(int buffer, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL15#glGetBufferParameteriv GetBufferParameteriv}. * * @param buffer the buffer object name * @param pname the symbolic name of a buffer object parameter. One of:
{@link GL15#GL_BUFFER_SIZE BUFFER_SIZE}{@link GL15#GL_BUFFER_USAGE BUFFER_USAGE}{@link GL15#GL_BUFFER_ACCESS BUFFER_ACCESS}{@link GL15#GL_BUFFER_MAPPED BUFFER_MAPPED}
{@link GL30#GL_BUFFER_ACCESS_FLAGS BUFFER_ACCESS_FLAGS}{@link GL30#GL_BUFFER_MAP_LENGTH BUFFER_MAP_LENGTH}{@link GL30#GL_BUFFER_MAP_OFFSET BUFFER_MAP_OFFSET}{@link GL44#GL_BUFFER_IMMUTABLE_STORAGE BUFFER_IMMUTABLE_STORAGE}
{@link GL44#GL_BUFFER_STORAGE_FLAGS BUFFER_STORAGE_FLAGS}
* @param params the requested parameter */ public static void glGetNamedBufferParameteriv(int buffer, int pname, IntBuffer params) { if (CHECKS) { check(params, 1); } nglGetNamedBufferParameteriv(buffer, pname, memAddress(params)); } /** *

Reference Page

* * DSA version of {@link GL15#glGetBufferParameteriv GetBufferParameteriv}. * * @param buffer the buffer object name * @param pname the symbolic name of a buffer object parameter. One of:
{@link GL15#GL_BUFFER_SIZE BUFFER_SIZE}{@link GL15#GL_BUFFER_USAGE BUFFER_USAGE}{@link GL15#GL_BUFFER_ACCESS BUFFER_ACCESS}{@link GL15#GL_BUFFER_MAPPED BUFFER_MAPPED}
{@link GL30#GL_BUFFER_ACCESS_FLAGS BUFFER_ACCESS_FLAGS}{@link GL30#GL_BUFFER_MAP_LENGTH BUFFER_MAP_LENGTH}{@link GL30#GL_BUFFER_MAP_OFFSET BUFFER_MAP_OFFSET}{@link GL44#GL_BUFFER_IMMUTABLE_STORAGE BUFFER_IMMUTABLE_STORAGE}
{@link GL44#GL_BUFFER_STORAGE_FLAGS BUFFER_STORAGE_FLAGS}
*/ public static int glGetNamedBufferParameteri(int buffer, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer params = stack.callocInt(1); nglGetNamedBufferParameteriv(buffer, pname, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetNamedBufferParameteri64v ] --- /** Unsafe version of: {@link #glGetNamedBufferParameteri64v GetNamedBufferParameteri64v} */ public static native void nglGetNamedBufferParameteri64v(int buffer, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL32#glGetBufferParameteri64v GetBufferParameteri64v}. * * @param buffer the buffer object name * @param pname the symbolic name of a buffer object parameter. One of:
{@link GL15#GL_BUFFER_SIZE BUFFER_SIZE}{@link GL15#GL_BUFFER_USAGE BUFFER_USAGE}{@link GL15#GL_BUFFER_ACCESS BUFFER_ACCESS}{@link GL15#GL_BUFFER_MAPPED BUFFER_MAPPED}
{@link GL30#GL_BUFFER_ACCESS_FLAGS BUFFER_ACCESS_FLAGS}{@link GL30#GL_BUFFER_MAP_LENGTH BUFFER_MAP_LENGTH}{@link GL30#GL_BUFFER_MAP_OFFSET BUFFER_MAP_OFFSET}{@link GL44#GL_BUFFER_IMMUTABLE_STORAGE BUFFER_IMMUTABLE_STORAGE}
{@link GL44#GL_BUFFER_STORAGE_FLAGS BUFFER_STORAGE_FLAGS}
* @param params the requested parameter */ public static void glGetNamedBufferParameteri64v(int buffer, int pname, LongBuffer params) { if (CHECKS) { check(params, 1); } nglGetNamedBufferParameteri64v(buffer, pname, memAddress(params)); } /** *

Reference Page

* * DSA version of {@link GL32#glGetBufferParameteri64v GetBufferParameteri64v}. * * @param buffer the buffer object name * @param pname the symbolic name of a buffer object parameter. One of:
{@link GL15#GL_BUFFER_SIZE BUFFER_SIZE}{@link GL15#GL_BUFFER_USAGE BUFFER_USAGE}{@link GL15#GL_BUFFER_ACCESS BUFFER_ACCESS}{@link GL15#GL_BUFFER_MAPPED BUFFER_MAPPED}
{@link GL30#GL_BUFFER_ACCESS_FLAGS BUFFER_ACCESS_FLAGS}{@link GL30#GL_BUFFER_MAP_LENGTH BUFFER_MAP_LENGTH}{@link GL30#GL_BUFFER_MAP_OFFSET BUFFER_MAP_OFFSET}{@link GL44#GL_BUFFER_IMMUTABLE_STORAGE BUFFER_IMMUTABLE_STORAGE}
{@link GL44#GL_BUFFER_STORAGE_FLAGS BUFFER_STORAGE_FLAGS}
*/ public static long glGetNamedBufferParameteri64(int buffer, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { LongBuffer params = stack.callocLong(1); nglGetNamedBufferParameteri64v(buffer, pname, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetNamedBufferPointerv ] --- /** Unsafe version of: {@link #glGetNamedBufferPointerv GetNamedBufferPointerv} */ public static native void nglGetNamedBufferPointerv(int buffer, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL15#glGetBufferPointerv GetBufferPointerv}. * * @param buffer the buffer object name * @param pname the pointer to be returned. Must be:
{@link GL15#GL_BUFFER_MAP_POINTER BUFFER_MAP_POINTER}
* @param params the pointer value specified by {@code pname} */ public static void glGetNamedBufferPointerv(int buffer, int pname, PointerBuffer params) { if (CHECKS) { check(params, 1); } nglGetNamedBufferPointerv(buffer, pname, memAddress(params)); } /** *

Reference Page

* * DSA version of {@link GL15#glGetBufferPointerv GetBufferPointerv}. * * @param buffer the buffer object name * @param pname the pointer to be returned. Must be:
{@link GL15#GL_BUFFER_MAP_POINTER BUFFER_MAP_POINTER}
*/ public static long glGetNamedBufferPointer(int buffer, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { PointerBuffer params = stack.callocPointer(1); nglGetNamedBufferPointerv(buffer, pname, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetNamedBufferSubData ] --- /** * Unsafe version of: {@link #glGetNamedBufferSubData GetNamedBufferSubData} * * @param size the size in bytes of the data store region being returned */ public static native void nglGetNamedBufferSubData(int buffer, long offset, long size, long data); /** *

Reference Page

* * DSA version of {@link GL15#glGetBufferSubData GetBufferSubData}. * * @param buffer the buffer object name * @param offset the offset into the buffer object's data store from which data will be returned, measured in bytes * @param data a pointer to the location where buffer object data is returned */ public static void glGetNamedBufferSubData(int buffer, long offset, ByteBuffer data) { nglGetNamedBufferSubData(buffer, offset, data.remaining(), memAddress(data)); } /** *

Reference Page

* * DSA version of {@link GL15#glGetBufferSubData GetBufferSubData}. * * @param buffer the buffer object name * @param offset the offset into the buffer object's data store from which data will be returned, measured in bytes * @param data a pointer to the location where buffer object data is returned */ public static void glGetNamedBufferSubData(int buffer, long offset, ShortBuffer data) { nglGetNamedBufferSubData(buffer, offset, data.remaining() << 1, memAddress(data)); } /** *

Reference Page

* * DSA version of {@link GL15#glGetBufferSubData GetBufferSubData}. * * @param buffer the buffer object name * @param offset the offset into the buffer object's data store from which data will be returned, measured in bytes * @param data a pointer to the location where buffer object data is returned */ public static void glGetNamedBufferSubData(int buffer, long offset, IntBuffer data) { nglGetNamedBufferSubData(buffer, offset, data.remaining() << 2, memAddress(data)); } /** *

Reference Page

* * DSA version of {@link GL15#glGetBufferSubData GetBufferSubData}. * * @param buffer the buffer object name * @param offset the offset into the buffer object's data store from which data will be returned, measured in bytes * @param data a pointer to the location where buffer object data is returned */ public static void glGetNamedBufferSubData(int buffer, long offset, FloatBuffer data) { nglGetNamedBufferSubData(buffer, offset, data.remaining() << 2, memAddress(data)); } /** *

Reference Page

* * DSA version of {@link GL15#glGetBufferSubData GetBufferSubData}. * * @param buffer the buffer object name * @param offset the offset into the buffer object's data store from which data will be returned, measured in bytes * @param data a pointer to the location where buffer object data is returned */ public static void glGetNamedBufferSubData(int buffer, long offset, DoubleBuffer data) { nglGetNamedBufferSubData(buffer, offset, data.remaining() << 3, memAddress(data)); } // --- [ glCreateFramebuffers ] --- /** * Unsafe version of: {@link #glCreateFramebuffers CreateFramebuffers} * * @param n the number of framebuffer names to create */ public static native void nglCreateFramebuffers(int n, long framebuffers); /** *

Reference Page

* * Returns {@code n} previously unused framebuffer names in {@code framebuffers}, each representing a new framebuffer object. * * @param framebuffers the buffer in which to store the framebuffer names */ public static void glCreateFramebuffers(IntBuffer framebuffers) { nglCreateFramebuffers(framebuffers.remaining(), memAddress(framebuffers)); } /** *

Reference Page

* * Returns {@code n} previously unused framebuffer names in {@code framebuffers}, each representing a new framebuffer object. */ public static int glCreateFramebuffers() { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer framebuffers = stack.callocInt(1); nglCreateFramebuffers(1, memAddress(framebuffers)); return framebuffers.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glNamedFramebufferRenderbuffer ] --- /** *

Reference Page

* * DSA version of {@link GL30#glFramebufferRenderbuffer FramebufferRenderbuffer}. * * @param framebuffer the framebuffer name * @param attachment the attachment point of the framebuffer. One of:
{@link GL30#GL_COLOR_ATTACHMENT0 COLOR_ATTACHMENT0}{@link GL30#GL_COLOR_ATTACHMENT1 COLOR_ATTACHMENT1}{@link GL30#GL_COLOR_ATTACHMENT2 COLOR_ATTACHMENT2}{@link GL30#GL_COLOR_ATTACHMENT3 COLOR_ATTACHMENT3}
{@link GL30#GL_COLOR_ATTACHMENT4 COLOR_ATTACHMENT4}{@link GL30#GL_COLOR_ATTACHMENT5 COLOR_ATTACHMENT5}{@link GL30#GL_COLOR_ATTACHMENT6 COLOR_ATTACHMENT6}{@link GL30#GL_COLOR_ATTACHMENT7 COLOR_ATTACHMENT7}
{@link GL30#GL_COLOR_ATTACHMENT8 COLOR_ATTACHMENT8}{@link GL30#GL_COLOR_ATTACHMENT9 COLOR_ATTACHMENT9}{@link GL30#GL_COLOR_ATTACHMENT10 COLOR_ATTACHMENT10}{@link GL30#GL_COLOR_ATTACHMENT11 COLOR_ATTACHMENT11}
{@link GL30#GL_COLOR_ATTACHMENT12 COLOR_ATTACHMENT12}{@link GL30#GL_COLOR_ATTACHMENT13 COLOR_ATTACHMENT13}{@link GL30#GL_COLOR_ATTACHMENT14 COLOR_ATTACHMENT14}{@link GL30#GL_COLOR_ATTACHMENT15 COLOR_ATTACHMENT15}
{@link GL30#GL_COLOR_ATTACHMENT16 COLOR_ATTACHMENT16}{@link GL30#GL_COLOR_ATTACHMENT17 COLOR_ATTACHMENT17}{@link GL30#GL_COLOR_ATTACHMENT18 COLOR_ATTACHMENT18}{@link GL30#GL_COLOR_ATTACHMENT19 COLOR_ATTACHMENT19}
{@link GL30#GL_COLOR_ATTACHMENT20 COLOR_ATTACHMENT20}{@link GL30#GL_COLOR_ATTACHMENT21 COLOR_ATTACHMENT21}{@link GL30#GL_COLOR_ATTACHMENT22 COLOR_ATTACHMENT22}{@link GL30#GL_COLOR_ATTACHMENT23 COLOR_ATTACHMENT23}
{@link GL30#GL_COLOR_ATTACHMENT24 COLOR_ATTACHMENT24}{@link GL30#GL_COLOR_ATTACHMENT25 COLOR_ATTACHMENT25}{@link GL30#GL_COLOR_ATTACHMENT26 COLOR_ATTACHMENT26}{@link GL30#GL_COLOR_ATTACHMENT27 COLOR_ATTACHMENT27}
{@link GL30#GL_COLOR_ATTACHMENT28 COLOR_ATTACHMENT28}{@link GL30#GL_COLOR_ATTACHMENT29 COLOR_ATTACHMENT29}{@link GL30#GL_COLOR_ATTACHMENT30 COLOR_ATTACHMENT30}{@link GL30#GL_COLOR_ATTACHMENT31 COLOR_ATTACHMENT31}
{@link GL30#GL_DEPTH_ATTACHMENT DEPTH_ATTACHMENT}{@link GL30#GL_STENCIL_ATTACHMENT STENCIL_ATTACHMENT}{@link GL30#GL_DEPTH_STENCIL_ATTACHMENT DEPTH_STENCIL_ATTACHMENT}
* @param renderbuffertarget the renderbuffer target. Must be:
{@link GL30#GL_RENDERBUFFER RENDERBUFFER}
* @param renderbuffer the name of an existing renderbuffer object of type {@code renderbuffertarget} to attach */ public static native void glNamedFramebufferRenderbuffer(int framebuffer, int attachment, int renderbuffertarget, int renderbuffer); // --- [ glNamedFramebufferParameteri ] --- /** *

Reference Page

* * DSA version of {@link GL43#glFramebufferParameteri FramebufferParameteri}. * * @param framebuffer the framebuffer name * @param pname a token indicating the parameter to be modified. One of:
{@link GL43#GL_FRAMEBUFFER_DEFAULT_WIDTH FRAMEBUFFER_DEFAULT_WIDTH}{@link GL43#GL_FRAMEBUFFER_DEFAULT_HEIGHT FRAMEBUFFER_DEFAULT_HEIGHT}
{@link GL43#GL_FRAMEBUFFER_DEFAULT_LAYERS FRAMEBUFFER_DEFAULT_LAYERS}{@link GL43#GL_FRAMEBUFFER_DEFAULT_SAMPLES FRAMEBUFFER_DEFAULT_SAMPLES}
{@link GL43#GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS}
* @param param the new value for the parameter named {@code pname} */ public static native void glNamedFramebufferParameteri(int framebuffer, int pname, int param); // --- [ glNamedFramebufferTexture ] --- /** *

Reference Page

* * DSA version of {@link GL32#glFramebufferTexture FramebufferTexture}. * * @param framebuffer the framebuffer name * @param attachment the attachment point of the framebuffer * @param texture the texture object to attach to the framebuffer attachment point named by {@code attachment} * @param level the mipmap level of {@code texture} to attach */ public static native void glNamedFramebufferTexture(int framebuffer, int attachment, int texture, int level); // --- [ glNamedFramebufferTextureLayer ] --- /** *

Reference Page

* * DSA version of {@link GL30#glFramebufferTextureLayer FramebufferTextureLayer}. * * @param framebuffer the framebuffer name * @param attachment the attachment point of the framebuffer. One of:
{@link GL30#GL_COLOR_ATTACHMENT0 COLOR_ATTACHMENT0}{@link GL30#GL_COLOR_ATTACHMENT1 COLOR_ATTACHMENT1}{@link GL30#GL_COLOR_ATTACHMENT2 COLOR_ATTACHMENT2}{@link GL30#GL_COLOR_ATTACHMENT3 COLOR_ATTACHMENT3}
{@link GL30#GL_COLOR_ATTACHMENT4 COLOR_ATTACHMENT4}{@link GL30#GL_COLOR_ATTACHMENT5 COLOR_ATTACHMENT5}{@link GL30#GL_COLOR_ATTACHMENT6 COLOR_ATTACHMENT6}{@link GL30#GL_COLOR_ATTACHMENT7 COLOR_ATTACHMENT7}
{@link GL30#GL_COLOR_ATTACHMENT8 COLOR_ATTACHMENT8}{@link GL30#GL_COLOR_ATTACHMENT9 COLOR_ATTACHMENT9}{@link GL30#GL_COLOR_ATTACHMENT10 COLOR_ATTACHMENT10}{@link GL30#GL_COLOR_ATTACHMENT11 COLOR_ATTACHMENT11}
{@link GL30#GL_COLOR_ATTACHMENT12 COLOR_ATTACHMENT12}{@link GL30#GL_COLOR_ATTACHMENT13 COLOR_ATTACHMENT13}{@link GL30#GL_COLOR_ATTACHMENT14 COLOR_ATTACHMENT14}{@link GL30#GL_COLOR_ATTACHMENT15 COLOR_ATTACHMENT15}
{@link GL30#GL_COLOR_ATTACHMENT16 COLOR_ATTACHMENT16}{@link GL30#GL_COLOR_ATTACHMENT17 COLOR_ATTACHMENT17}{@link GL30#GL_COLOR_ATTACHMENT18 COLOR_ATTACHMENT18}{@link GL30#GL_COLOR_ATTACHMENT19 COLOR_ATTACHMENT19}
{@link GL30#GL_COLOR_ATTACHMENT20 COLOR_ATTACHMENT20}{@link GL30#GL_COLOR_ATTACHMENT21 COLOR_ATTACHMENT21}{@link GL30#GL_COLOR_ATTACHMENT22 COLOR_ATTACHMENT22}{@link GL30#GL_COLOR_ATTACHMENT23 COLOR_ATTACHMENT23}
{@link GL30#GL_COLOR_ATTACHMENT24 COLOR_ATTACHMENT24}{@link GL30#GL_COLOR_ATTACHMENT25 COLOR_ATTACHMENT25}{@link GL30#GL_COLOR_ATTACHMENT26 COLOR_ATTACHMENT26}{@link GL30#GL_COLOR_ATTACHMENT27 COLOR_ATTACHMENT27}
{@link GL30#GL_COLOR_ATTACHMENT28 COLOR_ATTACHMENT28}{@link GL30#GL_COLOR_ATTACHMENT29 COLOR_ATTACHMENT29}{@link GL30#GL_COLOR_ATTACHMENT30 COLOR_ATTACHMENT30}{@link GL30#GL_COLOR_ATTACHMENT31 COLOR_ATTACHMENT31}
{@link GL30#GL_DEPTH_ATTACHMENT DEPTH_ATTACHMENT}{@link GL30#GL_STENCIL_ATTACHMENT STENCIL_ATTACHMENT}{@link GL30#GL_DEPTH_STENCIL_ATTACHMENT DEPTH_STENCIL_ATTACHMENT}
* @param texture the texture object to attach to the framebuffer attachment point named by {@code attachment} * @param level the mipmap level of {@code texture} to attach * @param layer the layer of {@code texture} to attach. */ public static native void glNamedFramebufferTextureLayer(int framebuffer, int attachment, int texture, int level, int layer); // --- [ glNamedFramebufferDrawBuffer ] --- /** *

Reference Page

* * DSA version of {@link GL11#glDrawBuffer DrawBuffer}. * * @param framebuffer the framebuffer name * @param buf the color buffer to draw to. One of:
{@link GL11#GL_NONE NONE}{@link GL11#GL_FRONT_LEFT FRONT_LEFT}{@link GL11#GL_FRONT_RIGHT FRONT_RIGHT}{@link GL11#GL_BACK_LEFT BACK_LEFT}{@link GL11#GL_BACK_RIGHT BACK_RIGHT}{@link GL11#GL_FRONT FRONT}{@link GL11#GL_BACK BACK}{@link GL11#GL_LEFT LEFT}
{@link GL11#GL_RIGHT RIGHT}{@link GL11#GL_FRONT_AND_BACK FRONT_AND_BACK}{@link GL11#GL_AUX0 AUX0}{@link GL11#GL_AUX1 AUX1}{@link GL11#GL_AUX2 AUX2}{@link GL11#GL_AUX3 AUX3}{@link GL30#GL_COLOR_ATTACHMENT0 COLOR_ATTACHMENT0}GL30.GL_COLOR_ATTACHMENT[1-15]
*/ public static native void glNamedFramebufferDrawBuffer(int framebuffer, int buf); // --- [ glNamedFramebufferDrawBuffers ] --- /** * Unsafe version of: {@link #glNamedFramebufferDrawBuffers NamedFramebufferDrawBuffers} * * @param n the number of buffers in {@code bufs} */ public static native void nglNamedFramebufferDrawBuffers(int framebuffer, int n, long bufs); /** *

Reference Page

* * DSA version of {@link GL20#glDrawBuffers DrawBuffers}. * * @param framebuffer the framebuffer name * @param bufs an array of symbolic constants specifying the buffers into which fragment colors or data values will be written. One of:
{@link GL11#GL_NONE NONE}{@link GL11#GL_FRONT_LEFT FRONT_LEFT}{@link GL11#GL_FRONT_RIGHT FRONT_RIGHT}{@link GL11#GL_BACK_LEFT BACK_LEFT}{@link GL11#GL_BACK_RIGHT BACK_RIGHT}{@link GL11#GL_AUX0 AUX0}{@link GL11#GL_AUX1 AUX1}{@link GL11#GL_AUX2 AUX2}
{@link GL11#GL_AUX3 AUX3}{@link GL30#GL_COLOR_ATTACHMENT0 COLOR_ATTACHMENT0}GL30.GL_COLOR_ATTACHMENT[1-15]
*/ public static void glNamedFramebufferDrawBuffers(int framebuffer, IntBuffer bufs) { nglNamedFramebufferDrawBuffers(framebuffer, bufs.remaining(), memAddress(bufs)); } /** *

Reference Page

* * DSA version of {@link GL20#glDrawBuffers DrawBuffers}. * * @param framebuffer the framebuffer name */ public static void glNamedFramebufferDrawBuffers(int framebuffer, int buf) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer bufs = stack.ints(buf); nglNamedFramebufferDrawBuffers(framebuffer, 1, memAddress(bufs)); } finally { stack.setPointer(stackPointer); } } // --- [ glNamedFramebufferReadBuffer ] --- /** *

Reference Page

* * DSA version of {@link GL11#glReadBuffer ReadBuffer}. * * @param framebuffer the framebuffer name * @param src the color buffer to read from. One of:
{@link GL11#GL_NONE NONE}{@link GL11#GL_FRONT_LEFT FRONT_LEFT}{@link GL11#GL_FRONT_RIGHT FRONT_RIGHT}{@link GL11#GL_BACK_LEFT BACK_LEFT}{@link GL11#GL_BACK_RIGHT BACK_RIGHT}{@link GL11#GL_FRONT FRONT}{@link GL11#GL_BACK BACK}{@link GL11#GL_LEFT LEFT}
{@link GL11#GL_RIGHT RIGHT}{@link GL11#GL_FRONT_AND_BACK FRONT_AND_BACK}{@link GL11#GL_AUX0 AUX0}{@link GL11#GL_AUX1 AUX1}{@link GL11#GL_AUX2 AUX2}{@link GL11#GL_AUX3 AUX3}{@link GL30#GL_COLOR_ATTACHMENT0 COLOR_ATTACHMENT0}GL30.GL_COLOR_ATTACHMENT[1-15]
*/ public static native void glNamedFramebufferReadBuffer(int framebuffer, int src); // --- [ glInvalidateNamedFramebufferData ] --- /** * Unsafe version of: {@link #glInvalidateNamedFramebufferData InvalidateNamedFramebufferData} * * @param numAttachments the number of entries in the {@code attachments} array */ public static native void nglInvalidateNamedFramebufferData(int framebuffer, int numAttachments, long attachments); /** *

Reference Page

* * DSA version of {@link GL43#glInvalidateFramebuffer InvalidateFramebuffer}. * * @param framebuffer the framebuffer name * @param attachments the address of an array identifying the attachments to be invalidated */ public static void glInvalidateNamedFramebufferData(int framebuffer, IntBuffer attachments) { nglInvalidateNamedFramebufferData(framebuffer, attachments.remaining(), memAddress(attachments)); } /** *

Reference Page

* * DSA version of {@link GL43#glInvalidateFramebuffer InvalidateFramebuffer}. * * @param framebuffer the framebuffer name */ public static void glInvalidateNamedFramebufferData(int framebuffer, int attachment) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer attachments = stack.ints(attachment); nglInvalidateNamedFramebufferData(framebuffer, 1, memAddress(attachments)); } finally { stack.setPointer(stackPointer); } } // --- [ glInvalidateNamedFramebufferSubData ] --- /** * Unsafe version of: {@link #glInvalidateNamedFramebufferSubData InvalidateNamedFramebufferSubData} * * @param numAttachments the number of entries in the {@code attachments} array */ public static native void nglInvalidateNamedFramebufferSubData(int framebuffer, int numAttachments, long attachments, int x, int y, int width, int height); /** *

Reference Page

* * DSA version of {@link GL43#glInvalidateSubFramebuffer InvalidateSubFramebuffer}. * * @param framebuffer the framebuffer name * @param attachments an array identifying the attachments to be invalidated * @param x the X offset of the region to be invalidated * @param y the Y offset of the region to be invalidated * @param width the width of the region to be invalidated * @param height the height of the region to be invalidated */ public static void glInvalidateNamedFramebufferSubData(int framebuffer, IntBuffer attachments, int x, int y, int width, int height) { nglInvalidateNamedFramebufferSubData(framebuffer, attachments.remaining(), memAddress(attachments), x, y, width, height); } /** *

Reference Page

* * DSA version of {@link GL43#glInvalidateSubFramebuffer InvalidateSubFramebuffer}. * * @param framebuffer the framebuffer name * @param x the X offset of the region to be invalidated * @param y the Y offset of the region to be invalidated * @param width the width of the region to be invalidated * @param height the height of the region to be invalidated */ public static void glInvalidateNamedFramebufferSubData(int framebuffer, int attachment, int x, int y, int width, int height) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer attachments = stack.ints(attachment); nglInvalidateNamedFramebufferSubData(framebuffer, 1, memAddress(attachments), x, y, width, height); } finally { stack.setPointer(stackPointer); } } // --- [ glClearNamedFramebufferiv ] --- /** Unsafe version of: {@link #glClearNamedFramebufferiv ClearNamedFramebufferiv} */ public static native void nglClearNamedFramebufferiv(int framebuffer, int buffer, int drawbuffer, long value); /** *

Reference Page

* * DSA version of {@link GL30#glClearBufferiv ClearBufferiv}. * * @param framebuffer the framebuffer name * @param buffer the buffer to clear. One of:
{@link GL11#GL_COLOR COLOR}{@link GL11#GL_STENCIL STENCIL}
* @param drawbuffer the draw buffer to clear * @param value for color buffers, a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to. For stencil buffers, a pointer to a * single stencil value to clear the buffer to. */ public static void glClearNamedFramebufferiv(int framebuffer, int buffer, int drawbuffer, IntBuffer value) { if (CHECKS) { check(value, 1); } nglClearNamedFramebufferiv(framebuffer, buffer, drawbuffer, memAddress(value)); } // --- [ glClearNamedFramebufferuiv ] --- /** Unsafe version of: {@link #glClearNamedFramebufferuiv ClearNamedFramebufferuiv} */ public static native void nglClearNamedFramebufferuiv(int framebuffer, int buffer, int drawbuffer, long value); /** *

Reference Page

* * DSA version of {@link GL30#glClearBufferuiv ClearBufferuiv}. * * @param framebuffer the framebuffer name * @param buffer the buffer to clear. Must be:
{@link GL11#GL_COLOR COLOR}
* @param drawbuffer the draw buffer to clear * @param value a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to */ public static void glClearNamedFramebufferuiv(int framebuffer, int buffer, int drawbuffer, IntBuffer value) { if (CHECKS) { check(value, 4); } nglClearNamedFramebufferuiv(framebuffer, buffer, drawbuffer, memAddress(value)); } // --- [ glClearNamedFramebufferfv ] --- /** Unsafe version of: {@link #glClearNamedFramebufferfv ClearNamedFramebufferfv} */ public static native void nglClearNamedFramebufferfv(int framebuffer, int buffer, int drawbuffer, long value); /** *

Reference Page

* * DSA version of {@link GL30#glClearBufferfv ClearBufferfv}. * * @param framebuffer the framebuffer name * @param buffer the buffer to clear. One of:
{@link GL11#GL_COLOR COLOR}{@link GL11#GL_DEPTH DEPTH}
* @param drawbuffer the draw buffer to clear * @param value for color buffers, a pointer to a four-element vector specifying R, G, B and A values to clear the buffer to. For depth buffers, a pointer to a * single depth value to clear the buffer to. */ public static void glClearNamedFramebufferfv(int framebuffer, int buffer, int drawbuffer, FloatBuffer value) { if (CHECKS) { check(value, 1); } nglClearNamedFramebufferfv(framebuffer, buffer, drawbuffer, memAddress(value)); } // --- [ glClearNamedFramebufferfi ] --- /** *

Reference Page

* * DSA version of {@link GL30#glClearBufferfi ClearBufferfi}. * * @param framebuffer the framebuffer name * @param buffer the buffer to clear. Must be:
{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}
* @param drawbuffer the draw buffer to clear * @param depth the depth value to clear the buffer to * @param stencil the stencil value to clear the buffer to */ public static native void glClearNamedFramebufferfi(int framebuffer, int buffer, int drawbuffer, float depth, int stencil); // --- [ glBlitNamedFramebuffer ] --- /** *

Reference Page

* * DSA version of {@link GL30#glBlitFramebuffer BlitFramebuffer}. * * @param readFramebuffer the source framebuffer name * @param drawFramebuffer the destination framebuffer name * @param srcX0 the lower-left coordinate of the source rectangle within the read buffer * @param srcY0 the upper-left coordinate of the source rectangle within the read buffer * @param srcX1 the lower-right coordinate of the source rectangle within the read buffer * @param srcY1 the upper-right coordinate of the source rectangle within the read buffer * @param dstX0 the lower-left coordinate of the destination rectangle within the write buffer * @param dstY0 the upper-left coordinate of the destination rectangle within the write buffer * @param dstX1 the lower-right coordinate of the destination rectangle within the write buffer * @param dstY1 the upper-right coordinate of the destination rectangle within the write buffer * @param mask the bitwise OR of the flags indicating which buffers are to be copied. One of:
{@link GL11#GL_COLOR_BUFFER_BIT COLOR_BUFFER_BIT}{@link GL11#GL_DEPTH_BUFFER_BIT DEPTH_BUFFER_BIT}{@link GL11#GL_STENCIL_BUFFER_BIT STENCIL_BUFFER_BIT}
* @param filter the interpolation to be applied if the image is stretched. One of:
{@link GL11#GL_NEAREST NEAREST}{@link GL11#GL_LINEAR LINEAR}
*/ public static native void glBlitNamedFramebuffer(int readFramebuffer, int drawFramebuffer, int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter); // --- [ glCheckNamedFramebufferStatus ] --- /** *

Reference Page

* * DSA version of {@link GL30#glCheckFramebufferStatus CheckFramebufferStatus}. * * @param framebuffer the framebuffer name * @param target the target of the framebuffer completeness check. One of:
{@link GL30#GL_FRAMEBUFFER FRAMEBUFFER}{@link GL30#GL_READ_FRAMEBUFFER READ_FRAMEBUFFER}{@link GL30#GL_DRAW_FRAMEBUFFER DRAW_FRAMEBUFFER}
*/ public static native int glCheckNamedFramebufferStatus(int framebuffer, int target); // --- [ glGetNamedFramebufferParameteriv ] --- /** Unsafe version of: {@link #glGetNamedFramebufferParameteriv GetNamedFramebufferParameteriv} */ public static native void nglGetNamedFramebufferParameteriv(int framebuffer, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL43#glGetFramebufferParameteriv GetFramebufferParameteriv}. * * @param framebuffer the framebuffer name * @param pname a token indicating the parameter to be retrieved. One of:
{@link GL43#GL_FRAMEBUFFER_DEFAULT_WIDTH FRAMEBUFFER_DEFAULT_WIDTH}{@link GL43#GL_FRAMEBUFFER_DEFAULT_HEIGHT FRAMEBUFFER_DEFAULT_HEIGHT}
{@link GL43#GL_FRAMEBUFFER_DEFAULT_LAYERS FRAMEBUFFER_DEFAULT_LAYERS}{@link GL43#GL_FRAMEBUFFER_DEFAULT_SAMPLES FRAMEBUFFER_DEFAULT_SAMPLES}
{@link GL43#GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS}
* @param params a variable to receive the value of the parameter named {@code pname} */ public static void glGetNamedFramebufferParameteriv(int framebuffer, int pname, IntBuffer params) { if (CHECKS) { check(params, 1); } nglGetNamedFramebufferParameteriv(framebuffer, pname, memAddress(params)); } /** *

Reference Page

* * DSA version of {@link GL43#glGetFramebufferParameteriv GetFramebufferParameteriv}. * * @param framebuffer the framebuffer name * @param pname a token indicating the parameter to be retrieved. One of:
{@link GL43#GL_FRAMEBUFFER_DEFAULT_WIDTH FRAMEBUFFER_DEFAULT_WIDTH}{@link GL43#GL_FRAMEBUFFER_DEFAULT_HEIGHT FRAMEBUFFER_DEFAULT_HEIGHT}
{@link GL43#GL_FRAMEBUFFER_DEFAULT_LAYERS FRAMEBUFFER_DEFAULT_LAYERS}{@link GL43#GL_FRAMEBUFFER_DEFAULT_SAMPLES FRAMEBUFFER_DEFAULT_SAMPLES}
{@link GL43#GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS}
*/ public static int glGetNamedFramebufferParameteri(int framebuffer, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer params = stack.callocInt(1); nglGetNamedFramebufferParameteriv(framebuffer, pname, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetNamedFramebufferAttachmentParameteriv ] --- /** Unsafe version of: {@link #glGetNamedFramebufferAttachmentParameteriv GetNamedFramebufferAttachmentParameteriv} */ public static native void nglGetNamedFramebufferAttachmentParameteriv(int framebuffer, int attachment, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL30#glGetFramebufferAttachmentParameteriv GetFramebufferAttachmentParameteriv}. * * @param framebuffer the framebuffer name * @param attachment the attachment within {@code target}. One of:
{@link GL30#GL_COLOR_ATTACHMENT0 COLOR_ATTACHMENT0}{@link GL30#GL_COLOR_ATTACHMENT1 COLOR_ATTACHMENT1}{@link GL30#GL_COLOR_ATTACHMENT2 COLOR_ATTACHMENT2}{@link GL30#GL_COLOR_ATTACHMENT3 COLOR_ATTACHMENT3}
{@link GL30#GL_COLOR_ATTACHMENT4 COLOR_ATTACHMENT4}{@link GL30#GL_COLOR_ATTACHMENT5 COLOR_ATTACHMENT5}{@link GL30#GL_COLOR_ATTACHMENT6 COLOR_ATTACHMENT6}{@link GL30#GL_COLOR_ATTACHMENT7 COLOR_ATTACHMENT7}
{@link GL30#GL_COLOR_ATTACHMENT8 COLOR_ATTACHMENT8}{@link GL30#GL_COLOR_ATTACHMENT9 COLOR_ATTACHMENT9}{@link GL30#GL_COLOR_ATTACHMENT10 COLOR_ATTACHMENT10}{@link GL30#GL_COLOR_ATTACHMENT11 COLOR_ATTACHMENT11}
{@link GL30#GL_COLOR_ATTACHMENT12 COLOR_ATTACHMENT12}{@link GL30#GL_COLOR_ATTACHMENT13 COLOR_ATTACHMENT13}{@link GL30#GL_COLOR_ATTACHMENT14 COLOR_ATTACHMENT14}{@link GL30#GL_COLOR_ATTACHMENT15 COLOR_ATTACHMENT15}
{@link GL30#GL_COLOR_ATTACHMENT16 COLOR_ATTACHMENT16}{@link GL30#GL_COLOR_ATTACHMENT17 COLOR_ATTACHMENT17}{@link GL30#GL_COLOR_ATTACHMENT18 COLOR_ATTACHMENT18}{@link GL30#GL_COLOR_ATTACHMENT19 COLOR_ATTACHMENT19}
{@link GL30#GL_COLOR_ATTACHMENT20 COLOR_ATTACHMENT20}{@link GL30#GL_COLOR_ATTACHMENT21 COLOR_ATTACHMENT21}{@link GL30#GL_COLOR_ATTACHMENT22 COLOR_ATTACHMENT22}{@link GL30#GL_COLOR_ATTACHMENT23 COLOR_ATTACHMENT23}
{@link GL30#GL_COLOR_ATTACHMENT24 COLOR_ATTACHMENT24}{@link GL30#GL_COLOR_ATTACHMENT25 COLOR_ATTACHMENT25}{@link GL30#GL_COLOR_ATTACHMENT26 COLOR_ATTACHMENT26}{@link GL30#GL_COLOR_ATTACHMENT27 COLOR_ATTACHMENT27}
{@link GL30#GL_COLOR_ATTACHMENT28 COLOR_ATTACHMENT28}{@link GL30#GL_COLOR_ATTACHMENT29 COLOR_ATTACHMENT29}{@link GL30#GL_COLOR_ATTACHMENT30 COLOR_ATTACHMENT30}{@link GL30#GL_COLOR_ATTACHMENT31 COLOR_ATTACHMENT31}
{@link GL30#GL_DEPTH_ATTACHMENT DEPTH_ATTACHMENT}{@link GL30#GL_STENCIL_ATTACHMENT STENCIL_ATTACHMENT}{@link GL30#GL_DEPTH_STENCIL_ATTACHMENT DEPTH_STENCIL_ATTACHMENT}
* @param pname the parameter of {@code attachment} to query. One of:
{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE}{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME FRAMEBUFFER_ATTACHMENT_OBJECT_NAME}
{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL}{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE}
{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER}{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING}
{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE}{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE FRAMEBUFFER_ATTACHMENT_RED_SIZE}
{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE FRAMEBUFFER_ATTACHMENT_GREEN_SIZE}{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE FRAMEBUFFER_ATTACHMENT_BLUE_SIZE}
{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE}{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE}
{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE}
* @param params an array to receive the value of the queried parameter */ public static void glGetNamedFramebufferAttachmentParameteriv(int framebuffer, int attachment, int pname, IntBuffer params) { if (CHECKS) { check(params, 1); } nglGetNamedFramebufferAttachmentParameteriv(framebuffer, attachment, pname, memAddress(params)); } /** *

Reference Page

* * DSA version of {@link GL30#glGetFramebufferAttachmentParameteriv GetFramebufferAttachmentParameteriv}. * * @param framebuffer the framebuffer name * @param attachment the attachment within {@code target}. One of:
{@link GL30#GL_COLOR_ATTACHMENT0 COLOR_ATTACHMENT0}{@link GL30#GL_COLOR_ATTACHMENT1 COLOR_ATTACHMENT1}{@link GL30#GL_COLOR_ATTACHMENT2 COLOR_ATTACHMENT2}{@link GL30#GL_COLOR_ATTACHMENT3 COLOR_ATTACHMENT3}
{@link GL30#GL_COLOR_ATTACHMENT4 COLOR_ATTACHMENT4}{@link GL30#GL_COLOR_ATTACHMENT5 COLOR_ATTACHMENT5}{@link GL30#GL_COLOR_ATTACHMENT6 COLOR_ATTACHMENT6}{@link GL30#GL_COLOR_ATTACHMENT7 COLOR_ATTACHMENT7}
{@link GL30#GL_COLOR_ATTACHMENT8 COLOR_ATTACHMENT8}{@link GL30#GL_COLOR_ATTACHMENT9 COLOR_ATTACHMENT9}{@link GL30#GL_COLOR_ATTACHMENT10 COLOR_ATTACHMENT10}{@link GL30#GL_COLOR_ATTACHMENT11 COLOR_ATTACHMENT11}
{@link GL30#GL_COLOR_ATTACHMENT12 COLOR_ATTACHMENT12}{@link GL30#GL_COLOR_ATTACHMENT13 COLOR_ATTACHMENT13}{@link GL30#GL_COLOR_ATTACHMENT14 COLOR_ATTACHMENT14}{@link GL30#GL_COLOR_ATTACHMENT15 COLOR_ATTACHMENT15}
{@link GL30#GL_COLOR_ATTACHMENT16 COLOR_ATTACHMENT16}{@link GL30#GL_COLOR_ATTACHMENT17 COLOR_ATTACHMENT17}{@link GL30#GL_COLOR_ATTACHMENT18 COLOR_ATTACHMENT18}{@link GL30#GL_COLOR_ATTACHMENT19 COLOR_ATTACHMENT19}
{@link GL30#GL_COLOR_ATTACHMENT20 COLOR_ATTACHMENT20}{@link GL30#GL_COLOR_ATTACHMENT21 COLOR_ATTACHMENT21}{@link GL30#GL_COLOR_ATTACHMENT22 COLOR_ATTACHMENT22}{@link GL30#GL_COLOR_ATTACHMENT23 COLOR_ATTACHMENT23}
{@link GL30#GL_COLOR_ATTACHMENT24 COLOR_ATTACHMENT24}{@link GL30#GL_COLOR_ATTACHMENT25 COLOR_ATTACHMENT25}{@link GL30#GL_COLOR_ATTACHMENT26 COLOR_ATTACHMENT26}{@link GL30#GL_COLOR_ATTACHMENT27 COLOR_ATTACHMENT27}
{@link GL30#GL_COLOR_ATTACHMENT28 COLOR_ATTACHMENT28}{@link GL30#GL_COLOR_ATTACHMENT29 COLOR_ATTACHMENT29}{@link GL30#GL_COLOR_ATTACHMENT30 COLOR_ATTACHMENT30}{@link GL30#GL_COLOR_ATTACHMENT31 COLOR_ATTACHMENT31}
{@link GL30#GL_DEPTH_ATTACHMENT DEPTH_ATTACHMENT}{@link GL30#GL_STENCIL_ATTACHMENT STENCIL_ATTACHMENT}{@link GL30#GL_DEPTH_STENCIL_ATTACHMENT DEPTH_STENCIL_ATTACHMENT}
* @param pname the parameter of {@code attachment} to query. One of:
{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE}{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME FRAMEBUFFER_ATTACHMENT_OBJECT_NAME}
{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL}{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE}
{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER}{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING}
{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE}{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE FRAMEBUFFER_ATTACHMENT_RED_SIZE}
{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE FRAMEBUFFER_ATTACHMENT_GREEN_SIZE}{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE FRAMEBUFFER_ATTACHMENT_BLUE_SIZE}
{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE}{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE}
{@link GL30#GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE}
*/ public static int glGetNamedFramebufferAttachmentParameteri(int framebuffer, int attachment, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer params = stack.callocInt(1); nglGetNamedFramebufferAttachmentParameteriv(framebuffer, attachment, pname, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glCreateRenderbuffers ] --- /** * Unsafe version of: {@link #glCreateRenderbuffers CreateRenderbuffers} * * @param n the number of renderbuffer names to create */ public static native void nglCreateRenderbuffers(int n, long renderbuffers); /** *

Reference Page

* * Returns {@code n} previously unused renderbuffer names in {@code renderbuffers}, each representing a new renderbuffer object. * * @param renderbuffers the buffer in which to store the created renderbuffer names */ public static void glCreateRenderbuffers(IntBuffer renderbuffers) { nglCreateRenderbuffers(renderbuffers.remaining(), memAddress(renderbuffers)); } /** *

Reference Page

* * Returns {@code n} previously unused renderbuffer names in {@code renderbuffers}, each representing a new renderbuffer object. */ public static int glCreateRenderbuffers() { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer renderbuffers = stack.callocInt(1); nglCreateRenderbuffers(1, memAddress(renderbuffers)); return renderbuffers.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glNamedRenderbufferStorage ] --- /** *

Reference Page

* * DSA version of {@link GL30#glRenderbufferStorage RenderbufferStorage}. * * @param renderbuffer * @param internalformat the internal format to use for the renderbuffer object's image. Must be a color-renderable, depth-renderable, or stencil-renderable format. * @param width the width of the renderbuffer, in pixels * @param height the height of the renderbuffer, in pixels */ public static native void glNamedRenderbufferStorage(int renderbuffer, int internalformat, int width, int height); // --- [ glNamedRenderbufferStorageMultisample ] --- /** *

Reference Page

* * DSA version of {@link GL30#glRenderbufferStorageMultisample RenderbufferStorageMultisample}. * * @param renderbuffer * @param samples the number of samples to be used for the renderbuffer object's storage * @param internalformat the internal format to use for the renderbuffer object's image. Must be a color-renderable, depth-renderable, or stencil-renderable format. * @param width the width of the renderbuffer, in pixels * @param height the height of the renderbuffer, in pixels */ public static native void glNamedRenderbufferStorageMultisample(int renderbuffer, int samples, int internalformat, int width, int height); // --- [ glGetNamedRenderbufferParameteriv ] --- /** Unsafe version of: {@link #glGetNamedRenderbufferParameteriv GetNamedRenderbufferParameteriv} */ public static native void nglGetNamedRenderbufferParameteriv(int renderbuffer, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL30#glGetRenderbufferParameteriv GetRenderbufferParameteriv}. * * @param renderbuffer * @param pname the parameter whose value to retrieve from the renderbuffer bound to {@code target}. One of:
{@link GL30#GL_RENDERBUFFER_WIDTH RENDERBUFFER_WIDTH}{@link GL30#GL_RENDERBUFFER_HEIGHT RENDERBUFFER_HEIGHT}{@link GL30#GL_RENDERBUFFER_INTERNAL_FORMAT RENDERBUFFER_INTERNAL_FORMAT}
{@link GL30#GL_RENDERBUFFER_RED_SIZE RENDERBUFFER_RED_SIZE}{@link GL30#GL_RENDERBUFFER_GREEN_SIZE RENDERBUFFER_GREEN_SIZE}{@link GL30#GL_RENDERBUFFER_BLUE_SIZE RENDERBUFFER_BLUE_SIZE}
{@link GL30#GL_RENDERBUFFER_ALPHA_SIZE RENDERBUFFER_ALPHA_SIZE}{@link GL30#GL_RENDERBUFFER_DEPTH_SIZE RENDERBUFFER_DEPTH_SIZE}{@link GL30#GL_RENDERBUFFER_STENCIL_SIZE RENDERBUFFER_STENCIL_SIZE}
{@link GL30#GL_RENDERBUFFER_SAMPLES RENDERBUFFER_SAMPLES}
* @param params an array to receive the value of the queried parameter */ public static void glGetNamedRenderbufferParameteriv(int renderbuffer, int pname, IntBuffer params) { if (CHECKS) { check(params, 1); } nglGetNamedRenderbufferParameteriv(renderbuffer, pname, memAddress(params)); } /** *

Reference Page

* * DSA version of {@link GL30#glGetRenderbufferParameteriv GetRenderbufferParameteriv}. * * @param renderbuffer * @param pname the parameter whose value to retrieve from the renderbuffer bound to {@code target}. One of:
{@link GL30#GL_RENDERBUFFER_WIDTH RENDERBUFFER_WIDTH}{@link GL30#GL_RENDERBUFFER_HEIGHT RENDERBUFFER_HEIGHT}{@link GL30#GL_RENDERBUFFER_INTERNAL_FORMAT RENDERBUFFER_INTERNAL_FORMAT}
{@link GL30#GL_RENDERBUFFER_RED_SIZE RENDERBUFFER_RED_SIZE}{@link GL30#GL_RENDERBUFFER_GREEN_SIZE RENDERBUFFER_GREEN_SIZE}{@link GL30#GL_RENDERBUFFER_BLUE_SIZE RENDERBUFFER_BLUE_SIZE}
{@link GL30#GL_RENDERBUFFER_ALPHA_SIZE RENDERBUFFER_ALPHA_SIZE}{@link GL30#GL_RENDERBUFFER_DEPTH_SIZE RENDERBUFFER_DEPTH_SIZE}{@link GL30#GL_RENDERBUFFER_STENCIL_SIZE RENDERBUFFER_STENCIL_SIZE}
{@link GL30#GL_RENDERBUFFER_SAMPLES RENDERBUFFER_SAMPLES}
*/ public static int glGetNamedRenderbufferParameteri(int renderbuffer, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer params = stack.callocInt(1); nglGetNamedRenderbufferParameteriv(renderbuffer, pname, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glCreateTextures ] --- /** * Unsafe version of: {@link #glCreateTextures CreateTextures} * * @param n the number of texture names to create */ public static native void nglCreateTextures(int target, int n, long textures); /** *

Reference Page

* * Returns {@code n} previously unused texture names in {@code textures}, each representing a new texture object. * * @param target the texture target. One of:
{@link GL11#GL_TEXTURE_1D TEXTURE_1D}{@link GL11#GL_TEXTURE_2D TEXTURE_2D}{@link GL30#GL_TEXTURE_1D_ARRAY TEXTURE_1D_ARRAY}{@link GL31#GL_TEXTURE_RECTANGLE TEXTURE_RECTANGLE}{@link GL13#GL_TEXTURE_CUBE_MAP TEXTURE_CUBE_MAP}
{@link GL12#GL_TEXTURE_3D TEXTURE_3D}{@link GL30#GL_TEXTURE_2D_ARRAY TEXTURE_2D_ARRAY}{@link GL40#GL_TEXTURE_CUBE_MAP_ARRAY TEXTURE_CUBE_MAP_ARRAY}{@link GL31#GL_TEXTURE_BUFFER TEXTURE_BUFFER}{@link GL32#GL_TEXTURE_2D_MULTISAMPLE TEXTURE_2D_MULTISAMPLE}
{@link GL32#GL_TEXTURE_2D_MULTISAMPLE_ARRAY TEXTURE_2D_MULTISAMPLE_ARRAY}
* @param textures the buffer in which to store the created texture names */ public static void glCreateTextures(int target, IntBuffer textures) { nglCreateTextures(target, textures.remaining(), memAddress(textures)); } /** *

Reference Page

* * Returns {@code n} previously unused texture names in {@code textures}, each representing a new texture object. * * @param target the texture target. One of:
{@link GL11#GL_TEXTURE_1D TEXTURE_1D}{@link GL11#GL_TEXTURE_2D TEXTURE_2D}{@link GL30#GL_TEXTURE_1D_ARRAY TEXTURE_1D_ARRAY}{@link GL31#GL_TEXTURE_RECTANGLE TEXTURE_RECTANGLE}{@link GL13#GL_TEXTURE_CUBE_MAP TEXTURE_CUBE_MAP}
{@link GL12#GL_TEXTURE_3D TEXTURE_3D}{@link GL30#GL_TEXTURE_2D_ARRAY TEXTURE_2D_ARRAY}{@link GL40#GL_TEXTURE_CUBE_MAP_ARRAY TEXTURE_CUBE_MAP_ARRAY}{@link GL31#GL_TEXTURE_BUFFER TEXTURE_BUFFER}{@link GL32#GL_TEXTURE_2D_MULTISAMPLE TEXTURE_2D_MULTISAMPLE}
{@link GL32#GL_TEXTURE_2D_MULTISAMPLE_ARRAY TEXTURE_2D_MULTISAMPLE_ARRAY}
*/ public static int glCreateTextures(int target) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer textures = stack.callocInt(1); nglCreateTextures(target, 1, memAddress(textures)); return textures.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glTextureBuffer ] --- /** *

Reference Page

* * DSA version of {@link GL31#glTexBuffer TexBuffer}. * * @param texture the texture name * @param internalformat the sized internal format of the data in the store belonging to {@code buffer} * @param buffer the name of the buffer object whose storage to attach to the active buffer texture */ public static native void glTextureBuffer(int texture, int internalformat, int buffer); // --- [ glTextureBufferRange ] --- /** *

Reference Page

* * DSA version of {@link GL43#glTexBufferRange TexBufferRange}. * * @param texture the texture name * @param internalformat the internal format of the data in the store belonging to {@code buffer} * @param buffer the name of the buffer object whose storage to attach to the active buffer texture * @param offset the offset of the start of the range of the buffer's data store to attach * @param size the size of the range of the buffer's data store to attach */ public static native void glTextureBufferRange(int texture, int internalformat, int buffer, long offset, long size); // --- [ glTextureStorage1D ] --- /** *

Reference Page

* * DSA version of {@link GL42#glTexStorage1D TexStorage1D}. * * @param texture the texture name * @param levels the number of texture levels * @param internalformat the sized internal format to be used to store texture image data * @param width the width of the texture, in texels */ public static native void glTextureStorage1D(int texture, int levels, int internalformat, int width); // --- [ glTextureStorage2D ] --- /** *

Reference Page

* * DSA version of {@link GL42#glTexStorage2D TexStorage2D}. * * @param texture the texture name * @param levels the number of texture levels * @param internalformat the sized internal format to be used to store texture image data * @param width the width of the texture, in texels * @param height the height of the texture, in texels */ public static native void glTextureStorage2D(int texture, int levels, int internalformat, int width, int height); // --- [ glTextureStorage3D ] --- /** *

Reference Page

* * DSA version of {@link GL42#glTexStorage3D TexStorage3D}. * * @param texture the texture name * @param levels the number of texture levels * @param internalformat the sized internal format to be used to store texture image data * @param width the width of the texture, in texels * @param height the height of the texture, in texels * @param depth the depth of the texture, in texels */ public static native void glTextureStorage3D(int texture, int levels, int internalformat, int width, int height, int depth); // --- [ glTextureStorage2DMultisample ] --- /** *

Reference Page

* * DSA version of {@link GL43#glTexStorage2DMultisample TexStorage2DMultisample}. * * @param texture the texture name * @param samples the number of samples in the texture * @param internalformat the sized internal format to be used to store texture image data * @param width the width of the texture, in texels * @param height the height of the texture, in texels * @param fixedsamplelocations whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not * depend on the internal format or size of the image */ public static native void glTextureStorage2DMultisample(int texture, int samples, int internalformat, int width, int height, boolean fixedsamplelocations); // --- [ glTextureStorage3DMultisample ] --- /** *

Reference Page

* * DSA version of {@link GL43#glTexStorage3DMultisample TexStorage3DMultisample}. * * @param texture the texture name * @param samples the number of samples in the texture * @param internalformat the sized internal format to be used to store texture image data * @param width the width of the texture, in texels * @param height the height of the texture, in texels * @param depth the depth of the texture, in texels * @param fixedsamplelocations whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not * depend on the internal format or size of the image */ public static native void glTextureStorage3DMultisample(int texture, int samples, int internalformat, int width, int height, int depth, boolean fixedsamplelocations); // --- [ glTextureSubImage1D ] --- /** Unsafe version of: {@link #glTextureSubImage1D TextureSubImage1D} */ public static native void nglTextureSubImage1D(int texture, int level, int xoffset, int width, int format, int type, long pixels); /** *

Reference Page

* * DSA version of {@link GL11#glTexSubImage1D TexSubImage1D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the left coordinate of the texel subregion * @param width the subregion width * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage1D(int texture, int level, int xoffset, int width, int format, int type, ByteBuffer pixels) { nglTextureSubImage1D(texture, level, xoffset, width, format, type, memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL11#glTexSubImage1D TexSubImage1D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the left coordinate of the texel subregion * @param width the subregion width * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage1D(int texture, int level, int xoffset, int width, int format, int type, long pixels) { nglTextureSubImage1D(texture, level, xoffset, width, format, type, pixels); } /** *

Reference Page

* * DSA version of {@link GL11#glTexSubImage1D TexSubImage1D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the left coordinate of the texel subregion * @param width the subregion width * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage1D(int texture, int level, int xoffset, int width, int format, int type, ShortBuffer pixels) { nglTextureSubImage1D(texture, level, xoffset, width, format, type, memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL11#glTexSubImage1D TexSubImage1D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the left coordinate of the texel subregion * @param width the subregion width * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage1D(int texture, int level, int xoffset, int width, int format, int type, IntBuffer pixels) { nglTextureSubImage1D(texture, level, xoffset, width, format, type, memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL11#glTexSubImage1D TexSubImage1D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the left coordinate of the texel subregion * @param width the subregion width * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage1D(int texture, int level, int xoffset, int width, int format, int type, FloatBuffer pixels) { nglTextureSubImage1D(texture, level, xoffset, width, format, type, memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL11#glTexSubImage1D TexSubImage1D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the left coordinate of the texel subregion * @param width the subregion width * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage1D(int texture, int level, int xoffset, int width, int format, int type, DoubleBuffer pixels) { nglTextureSubImage1D(texture, level, xoffset, width, format, type, memAddress(pixels)); } // --- [ glTextureSubImage2D ] --- /** Unsafe version of: {@link #glTextureSubImage2D TextureSubImage2D} */ public static native void nglTextureSubImage2D(int texture, int level, int xoffset, int yoffset, int width, int height, int format, int type, long pixels); /** *

Reference Page

* * DSA version of {@link GL11#glTexSubImage2D TexSubImage2D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the left coordinate of the texel subregion * @param yoffset the bottom coordinate of the texel subregion * @param width the subregion width * @param height the subregion height * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage2D(int texture, int level, int xoffset, int yoffset, int width, int height, int format, int type, ByteBuffer pixels) { nglTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, type, memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL11#glTexSubImage2D TexSubImage2D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the left coordinate of the texel subregion * @param yoffset the bottom coordinate of the texel subregion * @param width the subregion width * @param height the subregion height * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage2D(int texture, int level, int xoffset, int yoffset, int width, int height, int format, int type, long pixels) { nglTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, type, pixels); } /** *

Reference Page

* * DSA version of {@link GL11#glTexSubImage2D TexSubImage2D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the left coordinate of the texel subregion * @param yoffset the bottom coordinate of the texel subregion * @param width the subregion width * @param height the subregion height * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage2D(int texture, int level, int xoffset, int yoffset, int width, int height, int format, int type, ShortBuffer pixels) { nglTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, type, memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL11#glTexSubImage2D TexSubImage2D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the left coordinate of the texel subregion * @param yoffset the bottom coordinate of the texel subregion * @param width the subregion width * @param height the subregion height * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage2D(int texture, int level, int xoffset, int yoffset, int width, int height, int format, int type, IntBuffer pixels) { nglTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, type, memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL11#glTexSubImage2D TexSubImage2D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the left coordinate of the texel subregion * @param yoffset the bottom coordinate of the texel subregion * @param width the subregion width * @param height the subregion height * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage2D(int texture, int level, int xoffset, int yoffset, int width, int height, int format, int type, FloatBuffer pixels) { nglTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, type, memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL11#glTexSubImage2D TexSubImage2D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the left coordinate of the texel subregion * @param yoffset the bottom coordinate of the texel subregion * @param width the subregion width * @param height the subregion height * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage2D(int texture, int level, int xoffset, int yoffset, int width, int height, int format, int type, DoubleBuffer pixels) { nglTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, type, memAddress(pixels)); } // --- [ glTextureSubImage3D ] --- /** Unsafe version of: {@link #glTextureSubImage3D TextureSubImage3D} */ public static native void nglTextureSubImage3D(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, long pixels); /** *

Reference Page

* * DSA version of {@link GL12#glTexSubImage3D TexSubImage3D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the x coordinate of the texel subregion * @param yoffset the y coordinate of the texel subregion * @param zoffset the z coordinate of the texel subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage3D(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, ByteBuffer pixels) { nglTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL12#glTexSubImage3D TexSubImage3D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the x coordinate of the texel subregion * @param yoffset the y coordinate of the texel subregion * @param zoffset the z coordinate of the texel subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage3D(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, long pixels) { nglTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels); } /** *

Reference Page

* * DSA version of {@link GL12#glTexSubImage3D TexSubImage3D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the x coordinate of the texel subregion * @param yoffset the y coordinate of the texel subregion * @param zoffset the z coordinate of the texel subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage3D(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, ShortBuffer pixels) { nglTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL12#glTexSubImage3D TexSubImage3D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the x coordinate of the texel subregion * @param yoffset the y coordinate of the texel subregion * @param zoffset the z coordinate of the texel subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage3D(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, IntBuffer pixels) { nglTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL12#glTexSubImage3D TexSubImage3D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the x coordinate of the texel subregion * @param yoffset the y coordinate of the texel subregion * @param zoffset the z coordinate of the texel subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage3D(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, FloatBuffer pixels) { nglTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL12#glTexSubImage3D TexSubImage3D}. * * @param texture the texture name * @param level the level-of-detail-number * @param xoffset the x coordinate of the texel subregion * @param yoffset the y coordinate of the texel subregion * @param zoffset the z coordinate of the texel subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param format the pixel data format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the pixel data */ public static void glTextureSubImage3D(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, DoubleBuffer pixels) { nglTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, memAddress(pixels)); } // --- [ glCompressedTextureSubImage1D ] --- /** * Unsafe version of: {@link #glCompressedTextureSubImage1D CompressedTextureSubImage1D} * * @param imageSize the number of unsigned bytes of image data starting at the address specified by {@code data} */ public static native void nglCompressedTextureSubImage1D(int texture, int level, int xoffset, int width, int format, int imageSize, long data); /** *

Reference Page

* * DSA version of {@link GL13#glCompressedTexSubImage1D CompressedTexSubImage1D}. * * @param texture the texture name * @param level the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. * @param xoffset a texel offset in the x direction within the texture array * @param width the width of the texture subimage * @param format the format of the compressed image data stored at address {@code data}. One of:
{@link GL30#GL_COMPRESSED_RED_RGTC1 COMPRESSED_RED_RGTC1}{@link GL30#GL_COMPRESSED_SIGNED_RED_RGTC1 COMPRESSED_SIGNED_RED_RGTC1}
{@link GL30#GL_COMPRESSED_RG_RGTC2 COMPRESSED_RG_RGTC2}{@link GL30#GL_COMPRESSED_SIGNED_RG_RGTC2 COMPRESSED_SIGNED_RG_RGTC2}
{@link GL42#GL_COMPRESSED_RGBA_BPTC_UNORM COMPRESSED_RGBA_BPTC_UNORM}{@link GL42#GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM COMPRESSED_SRGB_ALPHA_BPTC_UNORM}
{@link GL42#GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT COMPRESSED_RGB_BPTC_SIGNED_FLOAT}{@link GL42#GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT}
{@link GL43#GL_COMPRESSED_RGB8_ETC2 COMPRESSED_RGB8_ETC2}{@link GL43#GL_COMPRESSED_SRGB8_ETC2 COMPRESSED_SRGB8_ETC2}
{@link GL43#GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2}{@link GL43#GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2}
{@link GL43#GL_COMPRESSED_RGBA8_ETC2_EAC COMPRESSED_RGBA8_ETC2_EAC}{@link GL43#GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC COMPRESSED_SRGB8_ALPHA8_ETC2_EAC}
{@link GL43#GL_COMPRESSED_R11_EAC COMPRESSED_R11_EAC}{@link GL43#GL_COMPRESSED_SIGNED_R11_EAC COMPRESSED_SIGNED_R11_EAC}
{@link GL43#GL_COMPRESSED_RG11_EAC COMPRESSED_RG11_EAC}{@link GL43#GL_COMPRESSED_SIGNED_RG11_EAC COMPRESSED_SIGNED_RG11_EAC}
see {@link EXTTextureCompressionS3TC}see {@link EXTTextureCompressionLATC}
see {@link ATITextureCompression3DC}see {@link KHRTextureCompressionASTCLDR}
* @param imageSize the number of unsigned bytes of image data starting at the address specified by {@code data} * @param data a pointer to the compressed image data */ public static void glCompressedTextureSubImage1D(int texture, int level, int xoffset, int width, int format, int imageSize, long data) { nglCompressedTextureSubImage1D(texture, level, xoffset, width, format, imageSize, data); } /** *

Reference Page

* * DSA version of {@link GL13#glCompressedTexSubImage1D CompressedTexSubImage1D}. * * @param texture the texture name * @param level the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. * @param xoffset a texel offset in the x direction within the texture array * @param width the width of the texture subimage * @param format the format of the compressed image data stored at address {@code data}. One of:
{@link GL30#GL_COMPRESSED_RED_RGTC1 COMPRESSED_RED_RGTC1}{@link GL30#GL_COMPRESSED_SIGNED_RED_RGTC1 COMPRESSED_SIGNED_RED_RGTC1}
{@link GL30#GL_COMPRESSED_RG_RGTC2 COMPRESSED_RG_RGTC2}{@link GL30#GL_COMPRESSED_SIGNED_RG_RGTC2 COMPRESSED_SIGNED_RG_RGTC2}
{@link GL42#GL_COMPRESSED_RGBA_BPTC_UNORM COMPRESSED_RGBA_BPTC_UNORM}{@link GL42#GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM COMPRESSED_SRGB_ALPHA_BPTC_UNORM}
{@link GL42#GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT COMPRESSED_RGB_BPTC_SIGNED_FLOAT}{@link GL42#GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT}
{@link GL43#GL_COMPRESSED_RGB8_ETC2 COMPRESSED_RGB8_ETC2}{@link GL43#GL_COMPRESSED_SRGB8_ETC2 COMPRESSED_SRGB8_ETC2}
{@link GL43#GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2}{@link GL43#GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2}
{@link GL43#GL_COMPRESSED_RGBA8_ETC2_EAC COMPRESSED_RGBA8_ETC2_EAC}{@link GL43#GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC COMPRESSED_SRGB8_ALPHA8_ETC2_EAC}
{@link GL43#GL_COMPRESSED_R11_EAC COMPRESSED_R11_EAC}{@link GL43#GL_COMPRESSED_SIGNED_R11_EAC COMPRESSED_SIGNED_R11_EAC}
{@link GL43#GL_COMPRESSED_RG11_EAC COMPRESSED_RG11_EAC}{@link GL43#GL_COMPRESSED_SIGNED_RG11_EAC COMPRESSED_SIGNED_RG11_EAC}
see {@link EXTTextureCompressionS3TC}see {@link EXTTextureCompressionLATC}
see {@link ATITextureCompression3DC}see {@link KHRTextureCompressionASTCLDR}
* @param data a pointer to the compressed image data */ public static void glCompressedTextureSubImage1D(int texture, int level, int xoffset, int width, int format, ByteBuffer data) { nglCompressedTextureSubImage1D(texture, level, xoffset, width, format, data.remaining(), memAddress(data)); } // --- [ glCompressedTextureSubImage2D ] --- /** * Unsafe version of: {@link #glCompressedTextureSubImage2D CompressedTextureSubImage2D} * * @param imageSize the number of unsigned bytes of image data starting at the address specified by {@code data} */ public static native void nglCompressedTextureSubImage2D(int texture, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, long data); /** *

Reference Page

* * DSA version of {@link GL13#glCompressedTexSubImage2D CompressedTexSubImage2D}. * * @param texture the texture name * @param level the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. * @param xoffset a texel offset in the x direction within the texture array * @param yoffset a texel offset in the y direction within the texture array * @param width the width of the texture subimage * @param height the height of the texture subimage * @param format the format of the compressed image data stored at address {@code data}. One of:
{@link GL30#GL_COMPRESSED_RED_RGTC1 COMPRESSED_RED_RGTC1}{@link GL30#GL_COMPRESSED_SIGNED_RED_RGTC1 COMPRESSED_SIGNED_RED_RGTC1}
{@link GL30#GL_COMPRESSED_RG_RGTC2 COMPRESSED_RG_RGTC2}{@link GL30#GL_COMPRESSED_SIGNED_RG_RGTC2 COMPRESSED_SIGNED_RG_RGTC2}
{@link GL42#GL_COMPRESSED_RGBA_BPTC_UNORM COMPRESSED_RGBA_BPTC_UNORM}{@link GL42#GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM COMPRESSED_SRGB_ALPHA_BPTC_UNORM}
{@link GL42#GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT COMPRESSED_RGB_BPTC_SIGNED_FLOAT}{@link GL42#GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT}
{@link GL43#GL_COMPRESSED_RGB8_ETC2 COMPRESSED_RGB8_ETC2}{@link GL43#GL_COMPRESSED_SRGB8_ETC2 COMPRESSED_SRGB8_ETC2}
{@link GL43#GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2}{@link GL43#GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2}
{@link GL43#GL_COMPRESSED_RGBA8_ETC2_EAC COMPRESSED_RGBA8_ETC2_EAC}{@link GL43#GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC COMPRESSED_SRGB8_ALPHA8_ETC2_EAC}
{@link GL43#GL_COMPRESSED_R11_EAC COMPRESSED_R11_EAC}{@link GL43#GL_COMPRESSED_SIGNED_R11_EAC COMPRESSED_SIGNED_R11_EAC}
{@link GL43#GL_COMPRESSED_RG11_EAC COMPRESSED_RG11_EAC}{@link GL43#GL_COMPRESSED_SIGNED_RG11_EAC COMPRESSED_SIGNED_RG11_EAC}
see {@link EXTTextureCompressionS3TC}see {@link EXTTextureCompressionLATC}
see {@link ATITextureCompression3DC}see {@link KHRTextureCompressionASTCLDR}
* @param imageSize the number of unsigned bytes of image data starting at the address specified by {@code data} * @param data a pointer to the compressed image data */ public static void glCompressedTextureSubImage2D(int texture, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, long data) { nglCompressedTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, imageSize, data); } /** *

Reference Page

* * DSA version of {@link GL13#glCompressedTexSubImage2D CompressedTexSubImage2D}. * * @param texture the texture name * @param level the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. * @param xoffset a texel offset in the x direction within the texture array * @param yoffset a texel offset in the y direction within the texture array * @param width the width of the texture subimage * @param height the height of the texture subimage * @param format the format of the compressed image data stored at address {@code data}. One of:
{@link GL30#GL_COMPRESSED_RED_RGTC1 COMPRESSED_RED_RGTC1}{@link GL30#GL_COMPRESSED_SIGNED_RED_RGTC1 COMPRESSED_SIGNED_RED_RGTC1}
{@link GL30#GL_COMPRESSED_RG_RGTC2 COMPRESSED_RG_RGTC2}{@link GL30#GL_COMPRESSED_SIGNED_RG_RGTC2 COMPRESSED_SIGNED_RG_RGTC2}
{@link GL42#GL_COMPRESSED_RGBA_BPTC_UNORM COMPRESSED_RGBA_BPTC_UNORM}{@link GL42#GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM COMPRESSED_SRGB_ALPHA_BPTC_UNORM}
{@link GL42#GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT COMPRESSED_RGB_BPTC_SIGNED_FLOAT}{@link GL42#GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT}
{@link GL43#GL_COMPRESSED_RGB8_ETC2 COMPRESSED_RGB8_ETC2}{@link GL43#GL_COMPRESSED_SRGB8_ETC2 COMPRESSED_SRGB8_ETC2}
{@link GL43#GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2}{@link GL43#GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2}
{@link GL43#GL_COMPRESSED_RGBA8_ETC2_EAC COMPRESSED_RGBA8_ETC2_EAC}{@link GL43#GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC COMPRESSED_SRGB8_ALPHA8_ETC2_EAC}
{@link GL43#GL_COMPRESSED_R11_EAC COMPRESSED_R11_EAC}{@link GL43#GL_COMPRESSED_SIGNED_R11_EAC COMPRESSED_SIGNED_R11_EAC}
{@link GL43#GL_COMPRESSED_RG11_EAC COMPRESSED_RG11_EAC}{@link GL43#GL_COMPRESSED_SIGNED_RG11_EAC COMPRESSED_SIGNED_RG11_EAC}
see {@link EXTTextureCompressionS3TC}see {@link EXTTextureCompressionLATC}
see {@link ATITextureCompression3DC}see {@link KHRTextureCompressionASTCLDR}
* @param data a pointer to the compressed image data */ public static void glCompressedTextureSubImage2D(int texture, int level, int xoffset, int yoffset, int width, int height, int format, ByteBuffer data) { nglCompressedTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, data.remaining(), memAddress(data)); } // --- [ glCompressedTextureSubImage3D ] --- /** * Unsafe version of: {@link #glCompressedTextureSubImage3D CompressedTextureSubImage3D} * * @param imageSize the number of unsigned bytes of image data starting at the address specified by {@code data} */ public static native void nglCompressedTextureSubImage3D(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, long data); /** *

Reference Page

* * DSA version of {@link GL13#glCompressedTexSubImage3D CompressedTexSubImage3D}. * * @param texture the texture name * @param level the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. * @param xoffset a texel offset in the x direction within the texture array * @param yoffset a texel offset in the y direction within the texture array * @param zoffset a texel offset in the z direction within the texture array * @param width the width of the texture subimage * @param height the height of the texture subimage * @param depth the depth of the texture subimage * @param format the format of the compressed image data stored at address {@code data}. One of:
{@link GL30#GL_COMPRESSED_RED_RGTC1 COMPRESSED_RED_RGTC1}{@link GL30#GL_COMPRESSED_SIGNED_RED_RGTC1 COMPRESSED_SIGNED_RED_RGTC1}
{@link GL30#GL_COMPRESSED_RG_RGTC2 COMPRESSED_RG_RGTC2}{@link GL30#GL_COMPRESSED_SIGNED_RG_RGTC2 COMPRESSED_SIGNED_RG_RGTC2}
{@link GL42#GL_COMPRESSED_RGBA_BPTC_UNORM COMPRESSED_RGBA_BPTC_UNORM}{@link GL42#GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM COMPRESSED_SRGB_ALPHA_BPTC_UNORM}
{@link GL42#GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT COMPRESSED_RGB_BPTC_SIGNED_FLOAT}{@link GL42#GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT}
{@link GL43#GL_COMPRESSED_RGB8_ETC2 COMPRESSED_RGB8_ETC2}{@link GL43#GL_COMPRESSED_SRGB8_ETC2 COMPRESSED_SRGB8_ETC2}
{@link GL43#GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2}{@link GL43#GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2}
{@link GL43#GL_COMPRESSED_RGBA8_ETC2_EAC COMPRESSED_RGBA8_ETC2_EAC}{@link GL43#GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC COMPRESSED_SRGB8_ALPHA8_ETC2_EAC}
{@link GL43#GL_COMPRESSED_R11_EAC COMPRESSED_R11_EAC}{@link GL43#GL_COMPRESSED_SIGNED_R11_EAC COMPRESSED_SIGNED_R11_EAC}
{@link GL43#GL_COMPRESSED_RG11_EAC COMPRESSED_RG11_EAC}{@link GL43#GL_COMPRESSED_SIGNED_RG11_EAC COMPRESSED_SIGNED_RG11_EAC}
see {@link EXTTextureCompressionS3TC}see {@link EXTTextureCompressionLATC}
see {@link ATITextureCompression3DC}see {@link KHRTextureCompressionASTCLDR}
* @param imageSize the number of unsigned bytes of image data starting at the address specified by {@code data} * @param data a pointer to the compressed image data */ public static void glCompressedTextureSubImage3D(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, long data) { nglCompressedTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data); } /** *

Reference Page

* * DSA version of {@link GL13#glCompressedTexSubImage3D CompressedTexSubImage3D}. * * @param texture the texture name * @param level the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. * @param xoffset a texel offset in the x direction within the texture array * @param yoffset a texel offset in the y direction within the texture array * @param zoffset a texel offset in the z direction within the texture array * @param width the width of the texture subimage * @param height the height of the texture subimage * @param depth the depth of the texture subimage * @param format the format of the compressed image data stored at address {@code data}. One of:
{@link GL30#GL_COMPRESSED_RED_RGTC1 COMPRESSED_RED_RGTC1}{@link GL30#GL_COMPRESSED_SIGNED_RED_RGTC1 COMPRESSED_SIGNED_RED_RGTC1}
{@link GL30#GL_COMPRESSED_RG_RGTC2 COMPRESSED_RG_RGTC2}{@link GL30#GL_COMPRESSED_SIGNED_RG_RGTC2 COMPRESSED_SIGNED_RG_RGTC2}
{@link GL42#GL_COMPRESSED_RGBA_BPTC_UNORM COMPRESSED_RGBA_BPTC_UNORM}{@link GL42#GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM COMPRESSED_SRGB_ALPHA_BPTC_UNORM}
{@link GL42#GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT COMPRESSED_RGB_BPTC_SIGNED_FLOAT}{@link GL42#GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT}
{@link GL43#GL_COMPRESSED_RGB8_ETC2 COMPRESSED_RGB8_ETC2}{@link GL43#GL_COMPRESSED_SRGB8_ETC2 COMPRESSED_SRGB8_ETC2}
{@link GL43#GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2}{@link GL43#GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2}
{@link GL43#GL_COMPRESSED_RGBA8_ETC2_EAC COMPRESSED_RGBA8_ETC2_EAC}{@link GL43#GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC COMPRESSED_SRGB8_ALPHA8_ETC2_EAC}
{@link GL43#GL_COMPRESSED_R11_EAC COMPRESSED_R11_EAC}{@link GL43#GL_COMPRESSED_SIGNED_R11_EAC COMPRESSED_SIGNED_R11_EAC}
{@link GL43#GL_COMPRESSED_RG11_EAC COMPRESSED_RG11_EAC}{@link GL43#GL_COMPRESSED_SIGNED_RG11_EAC COMPRESSED_SIGNED_RG11_EAC}
see {@link EXTTextureCompressionS3TC}see {@link EXTTextureCompressionLATC}
see {@link ATITextureCompression3DC}see {@link KHRTextureCompressionASTCLDR}
* @param data a pointer to the compressed image data */ public static void glCompressedTextureSubImage3D(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, ByteBuffer data) { nglCompressedTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, data.remaining(), memAddress(data)); } // --- [ glCopyTextureSubImage1D ] --- /** *

Reference Page

* * DSA version of {@link GL11#glCopyTexSubImage1D CopyTexSubImage1D}. * * @param texture the texture name * @param level the level-of-detail number * @param xoffset the left texel coordinate of the texture subregion to update * @param x the left framebuffer pixel coordinate * @param y the lower framebuffer pixel coordinate * @param width the texture subregion width */ public static native void glCopyTextureSubImage1D(int texture, int level, int xoffset, int x, int y, int width); // --- [ glCopyTextureSubImage2D ] --- /** *

Reference Page

* * DSA version of {@link GL11#glCopyTexSubImage2D CopyTexSubImage2D}. * * @param texture the texture name * @param level the level-of-detail number * @param xoffset the left texel coordinate of the texture subregion to update * @param yoffset the lower texel coordinate of the texture subregion to update * @param x the left framebuffer pixel coordinate * @param y the lower framebuffer pixel coordinate * @param width the texture subregion width * @param height the texture subregion height */ public static native void glCopyTextureSubImage2D(int texture, int level, int xoffset, int yoffset, int x, int y, int width, int height); // --- [ glCopyTextureSubImage3D ] --- /** *

Reference Page

* * DSA version of {@link GL12#glCopyTexSubImage3D CopyTexSubImage3D}. * * @param texture the texture name * @param level the level-of-detail number * @param xoffset the x coordinate of the texture subregion to update * @param yoffset the y coordinate of the texture subregion to update * @param zoffset the z coordinate of the texture subregion to update * @param x the left framebuffer pixel coordinate * @param y the lower framebuffer pixel coordinate * @param width the texture subregion width * @param height the texture subregion height */ public static native void glCopyTextureSubImage3D(int texture, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height); // --- [ glTextureParameterf ] --- /** *

Reference Page

* * DSA version of {@link GL11#glTexParameterf TexParameterf}. * * @param texture the texture name * @param pname the parameter to set * @param param the parameter value */ public static native void glTextureParameterf(int texture, int pname, float param); // --- [ glTextureParameterfv ] --- /** Unsafe version of: {@link #glTextureParameterfv TextureParameterfv} */ public static native void nglTextureParameterfv(int texture, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL11#glTexParameterfv TexParameterfv}. * * @param texture the texture name * @param pname the parameter to set * @param params the parameter value */ public static void glTextureParameterfv(int texture, int pname, FloatBuffer params) { if (CHECKS) { check(params, 4); } nglTextureParameterfv(texture, pname, memAddress(params)); } // --- [ glTextureParameteri ] --- /** *

Reference Page

* * DSA version of {@link GL11#glTexParameteri TexParameteri}. * * @param texture the texture name * @param pname the parameter to set. One of:
{@link GL12#GL_TEXTURE_BASE_LEVEL TEXTURE_BASE_LEVEL}{@link GL11#GL_TEXTURE_BORDER_COLOR TEXTURE_BORDER_COLOR}{@link GL14#GL_TEXTURE_COMPARE_MODE TEXTURE_COMPARE_MODE}{@link GL14#GL_TEXTURE_COMPARE_FUNC TEXTURE_COMPARE_FUNC}
{@link GL14#GL_TEXTURE_LOD_BIAS TEXTURE_LOD_BIAS}{@link GL11#GL_TEXTURE_MAG_FILTER TEXTURE_MAG_FILTER}{@link GL12#GL_TEXTURE_MAX_LEVEL TEXTURE_MAX_LEVEL}{@link GL12#GL_TEXTURE_MAX_LOD TEXTURE_MAX_LOD}
{@link GL11#GL_TEXTURE_MIN_FILTER TEXTURE_MIN_FILTER}{@link GL12#GL_TEXTURE_MIN_LOD TEXTURE_MIN_LOD}{@link GL11#GL_TEXTURE_PRIORITY TEXTURE_PRIORITY}{@link GL33#GL_TEXTURE_SWIZZLE_R TEXTURE_SWIZZLE_R}
{@link GL33#GL_TEXTURE_SWIZZLE_G TEXTURE_SWIZZLE_G}{@link GL33#GL_TEXTURE_SWIZZLE_B TEXTURE_SWIZZLE_B}{@link GL33#GL_TEXTURE_SWIZZLE_A TEXTURE_SWIZZLE_A}{@link GL33#GL_TEXTURE_SWIZZLE_RGBA TEXTURE_SWIZZLE_RGBA}
{@link GL11#GL_TEXTURE_WRAP_S TEXTURE_WRAP_S}{@link GL11#GL_TEXTURE_WRAP_T TEXTURE_WRAP_T}{@link GL12#GL_TEXTURE_WRAP_R TEXTURE_WRAP_R}{@link GL14#GL_DEPTH_TEXTURE_MODE DEPTH_TEXTURE_MODE}
{@link GL14#GL_GENERATE_MIPMAP GENERATE_MIPMAP}
* @param param the parameter value */ public static native void glTextureParameteri(int texture, int pname, int param); // --- [ glTextureParameterIiv ] --- /** Unsafe version of: {@link #glTextureParameterIiv TextureParameterIiv} */ public static native void nglTextureParameterIiv(int texture, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL30#glTexParameterIiv TexParameterIiv}. * * @param texture the texture name * @param pname the symbolic name of a single-valued texture parameter * @param params the value of {@code pname} */ public static void glTextureParameterIiv(int texture, int pname, IntBuffer params) { if (CHECKS) { check(params, 1); } nglTextureParameterIiv(texture, pname, memAddress(params)); } /** *

Reference Page

* * DSA version of {@link GL30#glTexParameterIiv TexParameterIiv}. * * @param texture the texture name * @param pname the symbolic name of a single-valued texture parameter */ public static void glTextureParameterIi(int texture, int pname, int param) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer params = stack.ints(param); nglTextureParameterIiv(texture, pname, memAddress(params)); } finally { stack.setPointer(stackPointer); } } // --- [ glTextureParameterIuiv ] --- /** Unsafe version of: {@link #glTextureParameterIuiv TextureParameterIuiv} */ public static native void nglTextureParameterIuiv(int texture, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL30#glTexParameterIuiv TexParameterIuiv}. * * @param texture the texture name * @param pname the symbolic name of a single-valued texture parameter * @param params the value of {@code pname} */ public static void glTextureParameterIuiv(int texture, int pname, IntBuffer params) { if (CHECKS) { check(params, 1); } nglTextureParameterIuiv(texture, pname, memAddress(params)); } /** *

Reference Page

* * DSA version of {@link GL30#glTexParameterIuiv TexParameterIuiv}. * * @param texture the texture name * @param pname the symbolic name of a single-valued texture parameter */ public static void glTextureParameterIui(int texture, int pname, int param) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer params = stack.ints(param); nglTextureParameterIuiv(texture, pname, memAddress(params)); } finally { stack.setPointer(stackPointer); } } // --- [ glTextureParameteriv ] --- /** Unsafe version of: {@link #glTextureParameteriv TextureParameteriv} */ public static native void nglTextureParameteriv(int texture, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL11#glTexParameteriv TexParameteriv}. * * @param texture the texture name * @param pname the parameter to set * @param params the parameter value */ public static void glTextureParameteriv(int texture, int pname, IntBuffer params) { if (CHECKS) { check(params, 4); } nglTextureParameteriv(texture, pname, memAddress(params)); } // --- [ glGenerateTextureMipmap ] --- /** *

Reference Page

* * DSA version of {@link GL30#glGenerateMipmap GenerateMipmap}. * * @param texture the texture name */ public static native void glGenerateTextureMipmap(int texture); // --- [ glBindTextureUnit ] --- /** *

Reference Page

* * Binds an existing texture object to the texture unit numbered {@code unit}. * *

{@code texture} must be zero or the name of an existing texture object. When {@code texture} is the name of an existing texture object, that object is * bound to the target, in the corresponding texture unit, that was specified when the object was created. When {@code texture} is zero, each of the targets * enumerated at the beginning of this section is reset to its default texture for the corresponding texture image unit.

* * @param unit the texture unit number * @param texture the texture name */ public static native void glBindTextureUnit(int unit, int texture); // --- [ glGetTextureImage ] --- /** * Unsafe version of: {@link #glGetTextureImage GetTextureImage} * * @param bufSize the size of the buffer to receive the retrieved pixel data */ public static native void nglGetTextureImage(int texture, int level, int format, int type, int bufSize, long pixels); /** *

Reference Page

* * DSA version of {@link GL11#glGetTexImage GetTexImage}. * * @param texture the texture name * @param level the level-of-detail number * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param bufSize the size of the buffer to receive the retrieved pixel data * @param pixels the buffer in which to place the returned data */ public static void glGetTextureImage(int texture, int level, int format, int type, int bufSize, long pixels) { nglGetTextureImage(texture, level, format, type, bufSize, pixels); } /** *

Reference Page

* * DSA version of {@link GL11#glGetTexImage GetTexImage}. * * @param texture the texture name * @param level the level-of-detail number * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the buffer in which to place the returned data */ public static void glGetTextureImage(int texture, int level, int format, int type, ByteBuffer pixels) { nglGetTextureImage(texture, level, format, type, pixels.remaining(), memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL11#glGetTexImage GetTexImage}. * * @param texture the texture name * @param level the level-of-detail number * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the buffer in which to place the returned data */ public static void glGetTextureImage(int texture, int level, int format, int type, ShortBuffer pixels) { nglGetTextureImage(texture, level, format, type, pixels.remaining() << 1, memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL11#glGetTexImage GetTexImage}. * * @param texture the texture name * @param level the level-of-detail number * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the buffer in which to place the returned data */ public static void glGetTextureImage(int texture, int level, int format, int type, IntBuffer pixels) { nglGetTextureImage(texture, level, format, type, pixels.remaining() << 2, memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL11#glGetTexImage GetTexImage}. * * @param texture the texture name * @param level the level-of-detail number * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the buffer in which to place the returned data */ public static void glGetTextureImage(int texture, int level, int format, int type, FloatBuffer pixels) { nglGetTextureImage(texture, level, format, type, pixels.remaining() << 2, memAddress(pixels)); } /** *

Reference Page

* * DSA version of {@link GL11#glGetTexImage GetTexImage}. * * @param texture the texture name * @param level the level-of-detail number * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the buffer in which to place the returned data */ public static void glGetTextureImage(int texture, int level, int format, int type, DoubleBuffer pixels) { nglGetTextureImage(texture, level, format, type, pixels.remaining() << 3, memAddress(pixels)); } // --- [ glGetCompressedTextureImage ] --- /** * Unsafe version of: {@link #glGetCompressedTextureImage GetCompressedTextureImage} * * @param bufSize the size of the buffer to receive the retrieved pixel data */ public static native void nglGetCompressedTextureImage(int texture, int level, int bufSize, long pixels); /** *

Reference Page

* * DSA version of {@link GL13#glGetCompressedTexImage GetCompressedTexImage}. * * @param texture the texture name * @param level the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. * @param bufSize the size of the buffer to receive the retrieved pixel data * @param pixels a buffer in which to return the compressed texture image */ public static void glGetCompressedTextureImage(int texture, int level, int bufSize, long pixels) { nglGetCompressedTextureImage(texture, level, bufSize, pixels); } /** *

Reference Page

* * DSA version of {@link GL13#glGetCompressedTexImage GetCompressedTexImage}. * * @param texture the texture name * @param level the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. * @param pixels a buffer in which to return the compressed texture image */ public static void glGetCompressedTextureImage(int texture, int level, ByteBuffer pixels) { if (CHECKS) { if (DEBUG) { check(pixels, glGetTextureLevelParameteri(texture, level, GL13.GL_TEXTURE_COMPRESSED_IMAGE_SIZE)); } } nglGetCompressedTextureImage(texture, level, pixels.remaining(), memAddress(pixels)); } // --- [ glGetTextureLevelParameterfv ] --- /** Unsafe version of: {@link #glGetTextureLevelParameterfv GetTextureLevelParameterfv} */ public static native void nglGetTextureLevelParameterfv(int texture, int level, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL11#glGetTexLevelParameterfv GetTexLevelParameterfv}. * * @param texture the texture name * @param level the level-of-detail number * @param pname the parameter to query * @param params a scalar or buffer in which to place the returned data */ public static void glGetTextureLevelParameterfv(int texture, int level, int pname, FloatBuffer params) { if (CHECKS) { check(params, 1); } nglGetTextureLevelParameterfv(texture, level, pname, memAddress(params)); } /** *

Reference Page

* * DSA version of {@link GL11#glGetTexLevelParameterfv GetTexLevelParameterfv}. * * @param texture the texture name * @param level the level-of-detail number * @param pname the parameter to query */ public static float glGetTextureLevelParameterf(int texture, int level, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { FloatBuffer params = stack.callocFloat(1); nglGetTextureLevelParameterfv(texture, level, pname, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetTextureLevelParameteriv ] --- /** Unsafe version of: {@link #glGetTextureLevelParameteriv GetTextureLevelParameteriv} */ public static native void nglGetTextureLevelParameteriv(int texture, int level, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL11#glGetTexLevelParameteriv GetTexLevelParameteriv}. * * @param texture the texture name * @param level the level-of-detail number * @param pname the parameter to query. One of:
{@link GL11#GL_TEXTURE_WIDTH TEXTURE_WIDTH}{@link GL11#GL_TEXTURE_HEIGHT TEXTURE_HEIGHT}{@link GL12#GL_TEXTURE_DEPTH TEXTURE_DEPTH}{@link GL11#GL_TEXTURE_BORDER TEXTURE_BORDER}
{@link GL32#GL_TEXTURE_SAMPLES TEXTURE_SAMPLES}{@link GL32#GL_TEXTURE_FIXED_SAMPLE_LOCATIONS TEXTURE_FIXED_SAMPLE_LOCATIONS}{@link GL11#GL_TEXTURE_INTERNAL_FORMAT TEXTURE_INTERNAL_FORMAT}{@link GL11#GL_TEXTURE_RED_SIZE TEXTURE_RED_SIZE}
{@link GL11#GL_TEXTURE_GREEN_SIZE TEXTURE_GREEN_SIZE}{@link GL11#GL_TEXTURE_BLUE_SIZE TEXTURE_BLUE_SIZE}{@link GL11#GL_TEXTURE_ALPHA_SIZE TEXTURE_ALPHA_SIZE}{@link GL11#GL_TEXTURE_LUMINANCE_SIZE TEXTURE_LUMINANCE_SIZE}
{@link GL11#GL_TEXTURE_INTENSITY_SIZE TEXTURE_INTENSITY_SIZE}{@link GL14#GL_TEXTURE_DEPTH_SIZE TEXTURE_DEPTH_SIZE}{@link GL30#GL_TEXTURE_STENCIL_SIZE TEXTURE_STENCIL_SIZE}{@link GL30#GL_TEXTURE_SHARED_SIZE TEXTURE_SHARED_SIZE}
{@link GL30#GL_TEXTURE_RED_TYPE TEXTURE_RED_TYPE}{@link GL30#GL_TEXTURE_GREEN_TYPE TEXTURE_GREEN_TYPE}{@link GL30#GL_TEXTURE_BLUE_TYPE TEXTURE_BLUE_TYPE}{@link GL30#GL_TEXTURE_ALPHA_TYPE TEXTURE_ALPHA_TYPE}
{@link GL30#GL_TEXTURE_LUMINANCE_TYPE TEXTURE_LUMINANCE_TYPE}{@link GL30#GL_TEXTURE_INTENSITY_TYPE TEXTURE_INTENSITY_TYPE}{@link GL30#GL_TEXTURE_DEPTH_TYPE TEXTURE_DEPTH_TYPE}{@link GL13#GL_TEXTURE_COMPRESSED TEXTURE_COMPRESSED}
{@link GL13#GL_TEXTURE_COMPRESSED_IMAGE_SIZE TEXTURE_COMPRESSED_IMAGE_SIZE}{@link GL31#GL_TEXTURE_BUFFER_DATA_STORE_BINDING TEXTURE_BUFFER_DATA_STORE_BINDING}{@link GL43#GL_TEXTURE_BUFFER_OFFSET TEXTURE_BUFFER_OFFSET}{@link GL43#GL_TEXTURE_BUFFER_SIZE TEXTURE_BUFFER_SIZE}
* @param params a scalar or buffer in which to place the returned data */ public static void glGetTextureLevelParameteriv(int texture, int level, int pname, IntBuffer params) { if (CHECKS) { check(params, 1); } nglGetTextureLevelParameteriv(texture, level, pname, memAddress(params)); } /** *

Reference Page

* * DSA version of {@link GL11#glGetTexLevelParameteriv GetTexLevelParameteriv}. * * @param texture the texture name * @param level the level-of-detail number * @param pname the parameter to query. One of:
{@link GL11#GL_TEXTURE_WIDTH TEXTURE_WIDTH}{@link GL11#GL_TEXTURE_HEIGHT TEXTURE_HEIGHT}{@link GL12#GL_TEXTURE_DEPTH TEXTURE_DEPTH}{@link GL11#GL_TEXTURE_BORDER TEXTURE_BORDER}
{@link GL32#GL_TEXTURE_SAMPLES TEXTURE_SAMPLES}{@link GL32#GL_TEXTURE_FIXED_SAMPLE_LOCATIONS TEXTURE_FIXED_SAMPLE_LOCATIONS}{@link GL11#GL_TEXTURE_INTERNAL_FORMAT TEXTURE_INTERNAL_FORMAT}{@link GL11#GL_TEXTURE_RED_SIZE TEXTURE_RED_SIZE}
{@link GL11#GL_TEXTURE_GREEN_SIZE TEXTURE_GREEN_SIZE}{@link GL11#GL_TEXTURE_BLUE_SIZE TEXTURE_BLUE_SIZE}{@link GL11#GL_TEXTURE_ALPHA_SIZE TEXTURE_ALPHA_SIZE}{@link GL11#GL_TEXTURE_LUMINANCE_SIZE TEXTURE_LUMINANCE_SIZE}
{@link GL11#GL_TEXTURE_INTENSITY_SIZE TEXTURE_INTENSITY_SIZE}{@link GL14#GL_TEXTURE_DEPTH_SIZE TEXTURE_DEPTH_SIZE}{@link GL30#GL_TEXTURE_STENCIL_SIZE TEXTURE_STENCIL_SIZE}{@link GL30#GL_TEXTURE_SHARED_SIZE TEXTURE_SHARED_SIZE}
{@link GL30#GL_TEXTURE_RED_TYPE TEXTURE_RED_TYPE}{@link GL30#GL_TEXTURE_GREEN_TYPE TEXTURE_GREEN_TYPE}{@link GL30#GL_TEXTURE_BLUE_TYPE TEXTURE_BLUE_TYPE}{@link GL30#GL_TEXTURE_ALPHA_TYPE TEXTURE_ALPHA_TYPE}
{@link GL30#GL_TEXTURE_LUMINANCE_TYPE TEXTURE_LUMINANCE_TYPE}{@link GL30#GL_TEXTURE_INTENSITY_TYPE TEXTURE_INTENSITY_TYPE}{@link GL30#GL_TEXTURE_DEPTH_TYPE TEXTURE_DEPTH_TYPE}{@link GL13#GL_TEXTURE_COMPRESSED TEXTURE_COMPRESSED}
{@link GL13#GL_TEXTURE_COMPRESSED_IMAGE_SIZE TEXTURE_COMPRESSED_IMAGE_SIZE}{@link GL31#GL_TEXTURE_BUFFER_DATA_STORE_BINDING TEXTURE_BUFFER_DATA_STORE_BINDING}{@link GL43#GL_TEXTURE_BUFFER_OFFSET TEXTURE_BUFFER_OFFSET}{@link GL43#GL_TEXTURE_BUFFER_SIZE TEXTURE_BUFFER_SIZE}
*/ public static int glGetTextureLevelParameteri(int texture, int level, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer params = stack.callocInt(1); nglGetTextureLevelParameteriv(texture, level, pname, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetTextureParameterfv ] --- /** Unsafe version of: {@link #glGetTextureParameterfv GetTextureParameterfv} */ public static native void nglGetTextureParameterfv(int texture, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL11#glGetTexParameterfv GetTexParameterfv}. * * @param texture the texture name * @param pname the parameter to query * @param params a scalar or buffer in which to place the returned data */ public static void glGetTextureParameterfv(int texture, int pname, FloatBuffer params) { if (CHECKS) { check(params, 1); } nglGetTextureParameterfv(texture, pname, memAddress(params)); } /** *

Reference Page

* * DSA version of {@link GL11#glGetTexParameterfv GetTexParameterfv}. * * @param texture the texture name * @param pname the parameter to query */ public static float glGetTextureParameterf(int texture, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { FloatBuffer params = stack.callocFloat(1); nglGetTextureParameterfv(texture, pname, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetTextureParameterIiv ] --- /** Unsafe version of: {@link #glGetTextureParameterIiv GetTextureParameterIiv} */ public static native void nglGetTextureParameterIiv(int texture, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL30#glGetTexParameterIiv GetTexParameterIiv}. * * @param texture the texture name * @param pname the symbolic name of a texture parameter * @param params returns the texture parameter value */ public static void glGetTextureParameterIiv(int texture, int pname, IntBuffer params) { if (CHECKS) { check(params, 1); } nglGetTextureParameterIiv(texture, pname, memAddress(params)); } /** *

Reference Page

* * DSA version of {@link GL30#glGetTexParameterIiv GetTexParameterIiv}. * * @param texture the texture name * @param pname the symbolic name of a texture parameter */ public static int glGetTextureParameterIi(int texture, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer params = stack.callocInt(1); nglGetTextureParameterIiv(texture, pname, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetTextureParameterIuiv ] --- /** Unsafe version of: {@link #glGetTextureParameterIuiv GetTextureParameterIuiv} */ public static native void nglGetTextureParameterIuiv(int texture, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL30#glGetTexParameterIuiv GetTexParameterIuiv}. * * @param texture the texture name * @param pname the symbolic name of a texture parameter * @param params returns the texture parameter value */ public static void glGetTextureParameterIuiv(int texture, int pname, IntBuffer params) { if (CHECKS) { check(params, 1); } nglGetTextureParameterIuiv(texture, pname, memAddress(params)); } /** *

Reference Page

* * DSA version of {@link GL30#glGetTexParameterIuiv GetTexParameterIuiv}. * * @param texture the texture name * @param pname the symbolic name of a texture parameter */ public static int glGetTextureParameterIui(int texture, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer params = stack.callocInt(1); nglGetTextureParameterIuiv(texture, pname, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetTextureParameteriv ] --- /** Unsafe version of: {@link #glGetTextureParameteriv GetTextureParameteriv} */ public static native void nglGetTextureParameteriv(int texture, int pname, long params); /** *

Reference Page

* * DSA version of {@link GL11#glGetTexParameteriv GetTexParameteriv}. * * @param texture the texture name * @param pname the parameter to query. One of:
{@link GL12#GL_TEXTURE_BASE_LEVEL TEXTURE_BASE_LEVEL}{@link GL11#GL_TEXTURE_BORDER_COLOR TEXTURE_BORDER_COLOR}{@link GL14#GL_TEXTURE_COMPARE_MODE TEXTURE_COMPARE_MODE}{@link GL14#GL_TEXTURE_COMPARE_FUNC TEXTURE_COMPARE_FUNC}
{@link GL14#GL_TEXTURE_LOD_BIAS TEXTURE_LOD_BIAS}{@link GL11#GL_TEXTURE_MAG_FILTER TEXTURE_MAG_FILTER}{@link GL12#GL_TEXTURE_MAX_LEVEL TEXTURE_MAX_LEVEL}{@link GL12#GL_TEXTURE_MAX_LOD TEXTURE_MAX_LOD}
{@link GL11#GL_TEXTURE_MIN_FILTER TEXTURE_MIN_FILTER}{@link GL12#GL_TEXTURE_MIN_LOD TEXTURE_MIN_LOD}{@link GL11#GL_TEXTURE_PRIORITY TEXTURE_PRIORITY}{@link GL33#GL_TEXTURE_SWIZZLE_R TEXTURE_SWIZZLE_R}
{@link GL33#GL_TEXTURE_SWIZZLE_G TEXTURE_SWIZZLE_G}{@link GL33#GL_TEXTURE_SWIZZLE_B TEXTURE_SWIZZLE_B}{@link GL33#GL_TEXTURE_SWIZZLE_A TEXTURE_SWIZZLE_A}{@link GL33#GL_TEXTURE_SWIZZLE_RGBA TEXTURE_SWIZZLE_RGBA}
{@link GL11#GL_TEXTURE_WRAP_S TEXTURE_WRAP_S}{@link GL11#GL_TEXTURE_WRAP_T TEXTURE_WRAP_T}{@link GL12#GL_TEXTURE_WRAP_R TEXTURE_WRAP_R}{@link GL14#GL_DEPTH_TEXTURE_MODE DEPTH_TEXTURE_MODE}
{@link GL14#GL_GENERATE_MIPMAP GENERATE_MIPMAP}{@link GL42#GL_IMAGE_FORMAT_COMPATIBILITY_TYPE IMAGE_FORMAT_COMPATIBILITY_TYPE}{@link GL42#GL_TEXTURE_IMMUTABLE_FORMAT TEXTURE_IMMUTABLE_FORMAT}{@link GL43#GL_TEXTURE_IMMUTABLE_LEVELS TEXTURE_IMMUTABLE_LEVELS}
{@link GL43#GL_TEXTURE_VIEW_MIN_LEVEL TEXTURE_VIEW_MIN_LEVEL}{@link GL43#GL_TEXTURE_VIEW_NUM_LEVELS TEXTURE_VIEW_NUM_LEVELS}{@link GL43#GL_TEXTURE_VIEW_MIN_LAYER TEXTURE_VIEW_MIN_LAYER}{@link GL43#GL_TEXTURE_VIEW_NUM_LAYERS TEXTURE_VIEW_NUM_LAYERS}
{@link GL11#GL_TEXTURE_RESIDENT TEXTURE_RESIDENT}
* @param params a scalar or buffer in which to place the returned data */ public static void glGetTextureParameteriv(int texture, int pname, IntBuffer params) { if (CHECKS) { check(params, 1); } nglGetTextureParameteriv(texture, pname, memAddress(params)); } /** *

Reference Page

* * DSA version of {@link GL11#glGetTexParameteriv GetTexParameteriv}. * * @param texture the texture name * @param pname the parameter to query. One of:
{@link GL12#GL_TEXTURE_BASE_LEVEL TEXTURE_BASE_LEVEL}{@link GL11#GL_TEXTURE_BORDER_COLOR TEXTURE_BORDER_COLOR}{@link GL14#GL_TEXTURE_COMPARE_MODE TEXTURE_COMPARE_MODE}{@link GL14#GL_TEXTURE_COMPARE_FUNC TEXTURE_COMPARE_FUNC}
{@link GL14#GL_TEXTURE_LOD_BIAS TEXTURE_LOD_BIAS}{@link GL11#GL_TEXTURE_MAG_FILTER TEXTURE_MAG_FILTER}{@link GL12#GL_TEXTURE_MAX_LEVEL TEXTURE_MAX_LEVEL}{@link GL12#GL_TEXTURE_MAX_LOD TEXTURE_MAX_LOD}
{@link GL11#GL_TEXTURE_MIN_FILTER TEXTURE_MIN_FILTER}{@link GL12#GL_TEXTURE_MIN_LOD TEXTURE_MIN_LOD}{@link GL11#GL_TEXTURE_PRIORITY TEXTURE_PRIORITY}{@link GL33#GL_TEXTURE_SWIZZLE_R TEXTURE_SWIZZLE_R}
{@link GL33#GL_TEXTURE_SWIZZLE_G TEXTURE_SWIZZLE_G}{@link GL33#GL_TEXTURE_SWIZZLE_B TEXTURE_SWIZZLE_B}{@link GL33#GL_TEXTURE_SWIZZLE_A TEXTURE_SWIZZLE_A}{@link GL33#GL_TEXTURE_SWIZZLE_RGBA TEXTURE_SWIZZLE_RGBA}
{@link GL11#GL_TEXTURE_WRAP_S TEXTURE_WRAP_S}{@link GL11#GL_TEXTURE_WRAP_T TEXTURE_WRAP_T}{@link GL12#GL_TEXTURE_WRAP_R TEXTURE_WRAP_R}{@link GL14#GL_DEPTH_TEXTURE_MODE DEPTH_TEXTURE_MODE}
{@link GL14#GL_GENERATE_MIPMAP GENERATE_MIPMAP}{@link GL42#GL_IMAGE_FORMAT_COMPATIBILITY_TYPE IMAGE_FORMAT_COMPATIBILITY_TYPE}{@link GL42#GL_TEXTURE_IMMUTABLE_FORMAT TEXTURE_IMMUTABLE_FORMAT}{@link GL43#GL_TEXTURE_IMMUTABLE_LEVELS TEXTURE_IMMUTABLE_LEVELS}
{@link GL43#GL_TEXTURE_VIEW_MIN_LEVEL TEXTURE_VIEW_MIN_LEVEL}{@link GL43#GL_TEXTURE_VIEW_NUM_LEVELS TEXTURE_VIEW_NUM_LEVELS}{@link GL43#GL_TEXTURE_VIEW_MIN_LAYER TEXTURE_VIEW_MIN_LAYER}{@link GL43#GL_TEXTURE_VIEW_NUM_LAYERS TEXTURE_VIEW_NUM_LAYERS}
{@link GL11#GL_TEXTURE_RESIDENT TEXTURE_RESIDENT}
*/ public static int glGetTextureParameteri(int texture, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer params = stack.callocInt(1); nglGetTextureParameteriv(texture, pname, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glCreateVertexArrays ] --- /** * Unsafe version of: {@link #glCreateVertexArrays CreateVertexArrays} * * @param n the number of vertex array object names to create */ public static native void nglCreateVertexArrays(int n, long arrays); /** *

Reference Page

* * Returns {@code n} previously unused vertex array object names in {@code arrays}. * * @param arrays the buffer in which to return the created vertex array object names */ public static void glCreateVertexArrays(IntBuffer arrays) { nglCreateVertexArrays(arrays.remaining(), memAddress(arrays)); } /** *

Reference Page

* * Returns {@code n} previously unused vertex array object names in {@code arrays}. */ public static int glCreateVertexArrays() { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer arrays = stack.callocInt(1); nglCreateVertexArrays(1, memAddress(arrays)); return arrays.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glDisableVertexArrayAttrib ] --- /** *

Reference Page

* * DSA version of {@link GL20#glDisableVertexAttribArray DisableVertexAttribArray}. * * @param vaobj the vertex array object name * @param index the index of the generic vertex attribute to be disabled */ public static native void glDisableVertexArrayAttrib(int vaobj, int index); // --- [ glEnableVertexArrayAttrib ] --- /** *

Reference Page

* * DSA version of {@link GL20#glEnableVertexAttribArray EnableVertexAttribArray}. * * @param vaobj the vertex array object name * @param index the index of the generic vertex attribute to be enabled */ public static native void glEnableVertexArrayAttrib(int vaobj, int index); // --- [ glVertexArrayElementBuffer ] --- /** *

Reference Page

* * Binds a buffer object to the element array buffer bind point of a vertex array object. * * @param vaobj the vertex array object name * @param buffer the buffer object name. If {@code buffer} is zero, any existing element array buffer binding to {@code vaobj} is removed. */ public static native void glVertexArrayElementBuffer(int vaobj, int buffer); // --- [ glVertexArrayVertexBuffer ] --- /** *

Reference Page

* * DSA version of {@link GL43#glBindVertexBuffer BindVertexBuffer}. * * @param vaobj the vertex array object name * @param bindingindex the index of the vertex buffer binding point to which to bind the buffer * @param buffer the name of an existing buffer to bind to the vertex buffer binding point * @param offset the offset of the first element of the buffer * @param stride the distance between elements within the buffer */ public static native void glVertexArrayVertexBuffer(int vaobj, int bindingindex, int buffer, long offset, int stride); // --- [ glVertexArrayVertexBuffers ] --- /** * Unsafe version of: {@link #glVertexArrayVertexBuffers VertexArrayVertexBuffers} * * @param count the number of vertex buffer binding points */ public static native void nglVertexArrayVertexBuffers(int vaobj, int first, int count, long buffers, long offsets, long strides); /** *

Reference Page

* * DSA version of {@link GL44#glBindVertexBuffers BindVertexBuffers}. * * @param vaobj the vertex array object name * @param first the first vertex buffer binding point * @param buffers an array of zeros or names of existing buffers objects * @param offsets an array of offses * @param strides an array of stride values */ public static void glVertexArrayVertexBuffers(int vaobj, int first, IntBuffer buffers, PointerBuffer offsets, IntBuffer strides) { if (CHECKS) { checkSafe(offsets, remainingSafe(buffers)); checkSafe(strides, remainingSafe(buffers)); } nglVertexArrayVertexBuffers(vaobj, first, remainingSafe(buffers), memAddressSafe(buffers), memAddressSafe(offsets), memAddressSafe(strides)); } // --- [ glVertexArrayAttribFormat ] --- /** *

Reference Page

* * DSA version of {@link GL43#glVertexAttribFormat VertexAttribFormat}. * * @param vaobj the vertex array object name * @param attribindex the generic vertex attribute array being described * @param size the number of values per vertex that are stored in the array. One of:
1234{@link GL12#GL_BGRA BGRA}
* @param type the type of the data stored in the array * @param normalized if true then integer data is normalized to the range [-1, 1] or [0, 1] if it is signed or unsigned, respectively. If false then integer data is * directly converted to floating point. * @param relativeoffset the offset, measured in basic machine units of the first element relative to the start of the vertex buffer binding this attribute fetches from */ public static native void glVertexArrayAttribFormat(int vaobj, int attribindex, int size, int type, boolean normalized, int relativeoffset); // --- [ glVertexArrayAttribIFormat ] --- /** *

Reference Page

* * DSA version of {@link GL43#glVertexAttribIFormat VertexAttribIFormat}. * * @param vaobj the vertex array object name * @param attribindex the generic vertex attribute array being described * @param size the number of values per vertex that are stored in the array. One of:
1234{@link GL12#GL_BGRA BGRA}
* @param type the type of the data stored in the array * @param relativeoffset the offset, measured in basic machine units of the first element relative to the start of the vertex buffer binding this attribute fetches from */ public static native void glVertexArrayAttribIFormat(int vaobj, int attribindex, int size, int type, int relativeoffset); // --- [ glVertexArrayAttribLFormat ] --- /** *

Reference Page

* * DSA version of {@link GL43#glVertexAttribLFormat VertexAttribLFormat}. * * @param vaobj the vertex array object name * @param attribindex the generic vertex attribute array being described * @param size the number of values per vertex that are stored in the array. One of:
1234{@link GL12#GL_BGRA BGRA}
* @param type the type of the data stored in the array * @param relativeoffset the offset, measured in basic machine units of the first element relative to the start of the vertex buffer binding this attribute fetches from */ public static native void glVertexArrayAttribLFormat(int vaobj, int attribindex, int size, int type, int relativeoffset); // --- [ glVertexArrayAttribBinding ] --- /** *

Reference Page

* * DSA version of {@link GL43#glVertexAttribBinding VertexAttribBinding}. * * @param vaobj the vertex array object name * @param attribindex the index of the attribute to associate with a vertex buffer binding * @param bindingindex the index of the vertex buffer binding with which to associate the generic vertex attribute */ public static native void glVertexArrayAttribBinding(int vaobj, int attribindex, int bindingindex); // --- [ glVertexArrayBindingDivisor ] --- /** *

Reference Page

* * DSA version of {@link GL43#glVertexBindingDivisor VertexBindingDivisor}. * * @param vaobj the vertex array object name * @param bindingindex the index of the generic vertex attribute * @param divisor the number of instances that will pass between updates of the generic attribute at slot {@code index} */ public static native void glVertexArrayBindingDivisor(int vaobj, int bindingindex, int divisor); // --- [ glGetVertexArrayiv ] --- /** Unsafe version of: {@link #glGetVertexArrayiv GetVertexArrayiv} */ public static native void nglGetVertexArrayiv(int vaobj, int pname, long param); /** *

Reference Page

* * Queries parameters of a vertex array object. * * @param vaobj the vertex array object name * @param pname the parameter to query. Must be:
{@link GL15#GL_ELEMENT_ARRAY_BUFFER_BINDING ELEMENT_ARRAY_BUFFER_BINDING}
* @param param the buffer in which to return the parameter values */ public static void glGetVertexArrayiv(int vaobj, int pname, IntBuffer param) { if (CHECKS) { check(param, 1); } nglGetVertexArrayiv(vaobj, pname, memAddress(param)); } /** *

Reference Page

* * Queries parameters of a vertex array object. * * @param vaobj the vertex array object name * @param pname the parameter to query. Must be:
{@link GL15#GL_ELEMENT_ARRAY_BUFFER_BINDING ELEMENT_ARRAY_BUFFER_BINDING}
*/ public static int glGetVertexArrayi(int vaobj, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer param = stack.callocInt(1); nglGetVertexArrayiv(vaobj, pname, memAddress(param)); return param.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetVertexArrayIndexediv ] --- /** Unsafe version of: {@link #glGetVertexArrayIndexediv GetVertexArrayIndexediv} */ public static native void nglGetVertexArrayIndexediv(int vaobj, int index, int pname, long param); /** *

Reference Page

* * Queries parameters of an attribute of a vertex array object. * * @param vaobj the vertex array object name * @param index the attribute to query * @param pname the parameter to query. One of:
{@link GL20#GL_VERTEX_ATTRIB_ARRAY_ENABLED VERTEX_ATTRIB_ARRAY_ENABLED}{@link GL20#GL_VERTEX_ATTRIB_ARRAY_SIZE VERTEX_ATTRIB_ARRAY_SIZE},
{@link GL20#GL_VERTEX_ATTRIB_ARRAY_STRIDE VERTEX_ATTRIB_ARRAY_STRIDE}{@link GL20#GL_VERTEX_ATTRIB_ARRAY_TYPE VERTEX_ATTRIB_ARRAY_TYPE}
{@link GL20#GL_VERTEX_ATTRIB_ARRAY_NORMALIZED VERTEX_ATTRIB_ARRAY_NORMALIZED}{@link GL30#GL_VERTEX_ATTRIB_ARRAY_INTEGER VERTEX_ATTRIB_ARRAY_INTEGER}
{@link GL33#GL_VERTEX_ATTRIB_ARRAY_DIVISOR VERTEX_ATTRIB_ARRAY_DIVISOR}{@link GL43#GL_VERTEX_ATTRIB_ARRAY_LONG VERTEX_ATTRIB_ARRAY_LONG}
{@link GL43#GL_VERTEX_ATTRIB_RELATIVE_OFFSET VERTEX_ATTRIB_RELATIVE_OFFSET}
* @param param the buffer in which to return the parameter values */ public static void glGetVertexArrayIndexediv(int vaobj, int index, int pname, IntBuffer param) { if (CHECKS) { check(param, 1); } nglGetVertexArrayIndexediv(vaobj, index, pname, memAddress(param)); } /** *

Reference Page

* * Queries parameters of an attribute of a vertex array object. * * @param vaobj the vertex array object name * @param index the attribute to query * @param pname the parameter to query. One of:
{@link GL20#GL_VERTEX_ATTRIB_ARRAY_ENABLED VERTEX_ATTRIB_ARRAY_ENABLED}{@link GL20#GL_VERTEX_ATTRIB_ARRAY_SIZE VERTEX_ATTRIB_ARRAY_SIZE},
{@link GL20#GL_VERTEX_ATTRIB_ARRAY_STRIDE VERTEX_ATTRIB_ARRAY_STRIDE}{@link GL20#GL_VERTEX_ATTRIB_ARRAY_TYPE VERTEX_ATTRIB_ARRAY_TYPE}
{@link GL20#GL_VERTEX_ATTRIB_ARRAY_NORMALIZED VERTEX_ATTRIB_ARRAY_NORMALIZED}{@link GL30#GL_VERTEX_ATTRIB_ARRAY_INTEGER VERTEX_ATTRIB_ARRAY_INTEGER}
{@link GL33#GL_VERTEX_ATTRIB_ARRAY_DIVISOR VERTEX_ATTRIB_ARRAY_DIVISOR}{@link GL43#GL_VERTEX_ATTRIB_ARRAY_LONG VERTEX_ATTRIB_ARRAY_LONG}
{@link GL43#GL_VERTEX_ATTRIB_RELATIVE_OFFSET VERTEX_ATTRIB_RELATIVE_OFFSET}
*/ public static int glGetVertexArrayIndexedi(int vaobj, int index, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer param = stack.callocInt(1); nglGetVertexArrayIndexediv(vaobj, index, pname, memAddress(param)); return param.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetVertexArrayIndexed64iv ] --- /** Unsafe version of: {@link #glGetVertexArrayIndexed64iv GetVertexArrayIndexed64iv} */ public static native void nglGetVertexArrayIndexed64iv(int vaobj, int index, int pname, long param); /** *

Reference Page

* * Queries parameters of an attribute of a vertex array object. * * @param vaobj the vertex array object name * @param index the attribute to query * @param pname the parameter to query. Must be:
{@link GL43#GL_VERTEX_BINDING_OFFSET VERTEX_BINDING_OFFSET}
* @param param the buffer in which to return the parameter values */ public static void glGetVertexArrayIndexed64iv(int vaobj, int index, int pname, LongBuffer param) { if (CHECKS) { check(param, 1); } nglGetVertexArrayIndexed64iv(vaobj, index, pname, memAddress(param)); } /** *

Reference Page

* * Queries parameters of an attribute of a vertex array object. * * @param vaobj the vertex array object name * @param index the attribute to query * @param pname the parameter to query. Must be:
{@link GL43#GL_VERTEX_BINDING_OFFSET VERTEX_BINDING_OFFSET}
*/ public static long glGetVertexArrayIndexed64i(int vaobj, int index, int pname) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { LongBuffer param = stack.callocLong(1); nglGetVertexArrayIndexed64iv(vaobj, index, pname, memAddress(param)); return param.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glCreateSamplers ] --- /** * Unsafe version of: {@link #glCreateSamplers CreateSamplers} * * @param n the number of sampler object names to create */ public static native void nglCreateSamplers(int n, long samplers); /** *

Reference Page

* * Returns {@code n} previously unused sampler names in {@code samplers}, each representing a new sampler object. * * @param samplers the buffer in which to return the created sampler object names */ public static void glCreateSamplers(IntBuffer samplers) { nglCreateSamplers(samplers.remaining(), memAddress(samplers)); } /** *

Reference Page

* * Returns {@code n} previously unused sampler names in {@code samplers}, each representing a new sampler object. */ public static int glCreateSamplers() { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer samplers = stack.callocInt(1); nglCreateSamplers(1, memAddress(samplers)); return samplers.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glCreateProgramPipelines ] --- /** * Unsafe version of: {@link #glCreateProgramPipelines CreateProgramPipelines} * * @param n the number of program pipeline names to create */ public static native void nglCreateProgramPipelines(int n, long pipelines); /** *

Reference Page

* * Returns {@code n} previously unused program pipeline names in {@code pipelines}, each representing a new program pipeline object. * * @param pipelines the buffer in which to return the created program pipeline names */ public static void glCreateProgramPipelines(IntBuffer pipelines) { nglCreateProgramPipelines(pipelines.remaining(), memAddress(pipelines)); } /** *

Reference Page

* * Returns {@code n} previously unused program pipeline names in {@code pipelines}, each representing a new program pipeline object. */ public static int glCreateProgramPipelines() { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer pipelines = stack.callocInt(1); nglCreateProgramPipelines(1, memAddress(pipelines)); return pipelines.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glCreateQueries ] --- /** * Unsafe version of: {@link #glCreateQueries CreateQueries} * * @param n the number of query object names to create */ public static native void nglCreateQueries(int target, int n, long ids); /** *

Reference Page

* * Returns {@code n} previously unused query object names in {@code ids}, each representing a new query object with the specified {@code target}. * * @param target the query target. One of:
{@link GL15#GL_SAMPLES_PASSED SAMPLES_PASSED}{@link GL30#GL_PRIMITIVES_GENERATED PRIMITIVES_GENERATED}{@link GL30#GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN}{@link GL33#GL_TIME_ELAPSED TIME_ELAPSED}
{@link GL33#GL_TIMESTAMP TIMESTAMP}{@link GL33#GL_ANY_SAMPLES_PASSED ANY_SAMPLES_PASSED}{@link GL43#GL_ANY_SAMPLES_PASSED_CONSERVATIVE ANY_SAMPLES_PASSED_CONSERVATIVE}
* @param ids the buffer in which to return the created query object names */ public static void glCreateQueries(int target, IntBuffer ids) { nglCreateQueries(target, ids.remaining(), memAddress(ids)); } /** *

Reference Page

* * Returns {@code n} previously unused query object names in {@code ids}, each representing a new query object with the specified {@code target}. * * @param target the query target. One of:
{@link GL15#GL_SAMPLES_PASSED SAMPLES_PASSED}{@link GL30#GL_PRIMITIVES_GENERATED PRIMITIVES_GENERATED}{@link GL30#GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN}{@link GL33#GL_TIME_ELAPSED TIME_ELAPSED}
{@link GL33#GL_TIMESTAMP TIMESTAMP}{@link GL33#GL_ANY_SAMPLES_PASSED ANY_SAMPLES_PASSED}{@link GL43#GL_ANY_SAMPLES_PASSED_CONSERVATIVE ANY_SAMPLES_PASSED_CONSERVATIVE}
*/ public static int glCreateQueries(int target) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer ids = stack.callocInt(1); nglCreateQueries(target, 1, memAddress(ids)); return ids.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetQueryBufferObjectiv ] --- /** *

Reference Page

* * Queries the state of a query object. * * @param id the name of a query object * @param buffer the name of a buffer object * @param pname the state to query * @param offset the offset into {@code buffer} at which the queried value is written */ public static native void glGetQueryBufferObjectiv(int id, int buffer, int pname, long offset); // --- [ glGetQueryBufferObjectuiv ] --- /** *

Reference Page

* * Unsigned version of {@link #glGetQueryBufferObjectiv GetQueryBufferObjectiv}. * * @param id the name of a query object * @param buffer the name of a buffer object * @param pname the state to query * @param offset the offset into {@code buffer} at which the queried value is written */ public static native void glGetQueryBufferObjectuiv(int id, int buffer, int pname, long offset); // --- [ glGetQueryBufferObjecti64v ] --- /** *

Reference Page

* * 64bit version of {@link #glGetQueryBufferObjectiv GetQueryBufferObjectiv}. * * @param id the name of a query object * @param buffer the name of a buffer object * @param pname the state to query * @param offset the offset into {@code buffer} at which the queried value is written */ public static native void glGetQueryBufferObjecti64v(int id, int buffer, int pname, long offset); // --- [ glGetQueryBufferObjectui64v ] --- /** *

Reference Page

* * 64bit version of {@link #glGetQueryBufferObjectuiv GetQueryBufferObjectuiv}. * * @param id the name of a query object * @param buffer the name of a buffer object * @param pname the state to query * @param offset the offset into {@code buffer} at which the queried value is written */ public static native void glGetQueryBufferObjectui64v(int id, int buffer, int pname, long offset); // --- [ glMemoryBarrierByRegion ] --- /** *

Reference Page

* * Behaves like {@link GL42#glMemoryBarrier MemoryBarrier}, with two differences: * *

First, it narrows the region under consideration so that only reads/writes of prior fragment shaders that are invoked for a smaller region of the * framebuffer will be completed/reflected prior to subsequent reads/write of following fragment shaders. The size of the region is implementation * dependent and may be as small as one framebuffer pixel.

* *

Second, it only applies to memory transactions that may be read by or written by a fragment shader.

* *

When barriers is {@link GL42#GL_ALL_BARRIER_BITS ALL_BARRIER_BITS}, shader memory accesses will be synchronized relative to all these barrier bits, but not to other * barrier bits specific to {@link GL42#glMemoryBarrier MemoryBarrier}. This implies that reads/writes for scatter/gather-like algorithms may or may not be * completed/reflected after a MemoryBarrierByRegion command. However, for uses such as deferred shading, where a linked list of visible * surfaces with the head at a framebuffer address may be constructed, and the entirety of the list is only dependent on previous executions at that * framebuffer address, MemoryBarrierByRegion may be significantly more efficient than {@link GL42#glMemoryBarrier MemoryBarrier}.

* * @param barriers the barriers to insert. One or more of:
{@link GL42#GL_ATOMIC_COUNTER_BARRIER_BIT ATOMIC_COUNTER_BARRIER_BIT}{@link GL42#GL_FRAMEBUFFER_BARRIER_BIT FRAMEBUFFER_BARRIER_BIT}{@link GL42#GL_SHADER_IMAGE_ACCESS_BARRIER_BIT SHADER_IMAGE_ACCESS_BARRIER_BIT}
{@link GL43#GL_SHADER_STORAGE_BARRIER_BIT SHADER_STORAGE_BARRIER_BIT}{@link GL42#GL_TEXTURE_FETCH_BARRIER_BIT TEXTURE_FETCH_BARRIER_BIT}{@link GL42#GL_UNIFORM_BARRIER_BIT UNIFORM_BARRIER_BIT}
*/ public static native void glMemoryBarrierByRegion(int barriers); // --- [ glGetTextureSubImage ] --- /** * Unsafe version of: {@link #glGetTextureSubImage GetTextureSubImage} * * @param bufSize the size of the buffer to receive the retrieved pixel data */ public static native void nglGetTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, int bufSize, long pixels); /** *

Reference Page

* * Obtains sub-regions of a texture image from a texture object. * * @param texture the source texture object name * @param level the level-of-detail number * @param xoffset the x-position of the subregion * @param yoffset the y-position of the subregion * @param zoffset the z-position of the subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param bufSize the size of the buffer to receive the retrieved pixel data * @param pixels the buffer in which to place the returned data */ public static void glGetTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, int bufSize, long pixels) { nglGetTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, bufSize, pixels); } /** *

Reference Page

* * Obtains sub-regions of a texture image from a texture object. * * @param texture the source texture object name * @param level the level-of-detail number * @param xoffset the x-position of the subregion * @param yoffset the y-position of the subregion * @param zoffset the z-position of the subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the buffer in which to place the returned data */ public static void glGetTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, ByteBuffer pixels) { nglGetTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels.remaining(), memAddress(pixels)); } /** *

Reference Page

* * Obtains sub-regions of a texture image from a texture object. * * @param texture the source texture object name * @param level the level-of-detail number * @param xoffset the x-position of the subregion * @param yoffset the y-position of the subregion * @param zoffset the z-position of the subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the buffer in which to place the returned data */ public static void glGetTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, ShortBuffer pixels) { nglGetTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels.remaining() << 1, memAddress(pixels)); } /** *

Reference Page

* * Obtains sub-regions of a texture image from a texture object. * * @param texture the source texture object name * @param level the level-of-detail number * @param xoffset the x-position of the subregion * @param yoffset the y-position of the subregion * @param zoffset the z-position of the subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the buffer in which to place the returned data */ public static void glGetTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, IntBuffer pixels) { nglGetTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels.remaining() << 2, memAddress(pixels)); } /** *

Reference Page

* * Obtains sub-regions of a texture image from a texture object. * * @param texture the source texture object name * @param level the level-of-detail number * @param xoffset the x-position of the subregion * @param yoffset the y-position of the subregion * @param zoffset the z-position of the subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the buffer in which to place the returned data */ public static void glGetTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, FloatBuffer pixels) { nglGetTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels.remaining() << 2, memAddress(pixels)); } /** *

Reference Page

* * Obtains sub-regions of a texture image from a texture object. * * @param texture the source texture object name * @param level the level-of-detail number * @param xoffset the x-position of the subregion * @param yoffset the y-position of the subregion * @param zoffset the z-position of the subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels the buffer in which to place the returned data */ public static void glGetTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, DoubleBuffer pixels) { nglGetTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels.remaining() << 3, memAddress(pixels)); } // --- [ glGetCompressedTextureSubImage ] --- /** * Unsafe version of: {@link #glGetCompressedTextureSubImage GetCompressedTextureSubImage} * * @param bufSize the size of the buffer to receive the retrieved pixel data */ public static native void nglGetCompressedTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int bufSize, long pixels); /** *

Reference Page

* * Obtains a sub-region of a compressed texture image. * * @param texture the source texture object name * @param level the level-of-detail number * @param xoffset the x-position of the subregion * @param yoffset the y-position of the subregion * @param zoffset the z-position of the subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param bufSize the size of the buffer to receive the retrieved pixel data * @param pixels the buffer in which to place the returned data */ public static void glGetCompressedTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int bufSize, long pixels) { nglGetCompressedTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, bufSize, pixels); } /** *

Reference Page

* * Obtains a sub-region of a compressed texture image. * * @param texture the source texture object name * @param level the level-of-detail number * @param xoffset the x-position of the subregion * @param yoffset the y-position of the subregion * @param zoffset the z-position of the subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param pixels the buffer in which to place the returned data */ public static void glGetCompressedTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, ByteBuffer pixels) { nglGetCompressedTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, pixels.remaining(), memAddress(pixels)); } /** *

Reference Page

* * Obtains a sub-region of a compressed texture image. * * @param texture the source texture object name * @param level the level-of-detail number * @param xoffset the x-position of the subregion * @param yoffset the y-position of the subregion * @param zoffset the z-position of the subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param pixels the buffer in which to place the returned data */ public static void glGetCompressedTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, ShortBuffer pixels) { nglGetCompressedTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, pixels.remaining() << 1, memAddress(pixels)); } /** *

Reference Page

* * Obtains a sub-region of a compressed texture image. * * @param texture the source texture object name * @param level the level-of-detail number * @param xoffset the x-position of the subregion * @param yoffset the y-position of the subregion * @param zoffset the z-position of the subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param pixels the buffer in which to place the returned data */ public static void glGetCompressedTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, IntBuffer pixels) { nglGetCompressedTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, pixels.remaining() << 2, memAddress(pixels)); } /** *

Reference Page

* * Obtains a sub-region of a compressed texture image. * * @param texture the source texture object name * @param level the level-of-detail number * @param xoffset the x-position of the subregion * @param yoffset the y-position of the subregion * @param zoffset the z-position of the subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param pixels the buffer in which to place the returned data */ public static void glGetCompressedTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, FloatBuffer pixels) { nglGetCompressedTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, pixels.remaining() << 2, memAddress(pixels)); } /** *

Reference Page

* * Obtains a sub-region of a compressed texture image. * * @param texture the source texture object name * @param level the level-of-detail number * @param xoffset the x-position of the subregion * @param yoffset the y-position of the subregion * @param zoffset the z-position of the subregion * @param width the subregion width * @param height the subregion height * @param depth the subregion depth * @param pixels the buffer in which to place the returned data */ public static void glGetCompressedTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, DoubleBuffer pixels) { nglGetCompressedTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, pixels.remaining() << 3, memAddress(pixels)); } // --- [ glTextureBarrier ] --- /** *

Reference Page

* * Guarantees that writes have completed and caches have been invalidated before subsequent Draws are executed. */ public static native void glTextureBarrier(); // --- [ glGetGraphicsResetStatus ] --- /** *

Reference Page

* * Indicates if the GL context has been in a reset state at any point since the last call to GetGraphicsResetStatus: * *
    *
  • {@link GL11#GL_NO_ERROR NO_ERROR} indicates that the GL context has not been in a reset state since the last call.
  • *
  • {@link #GL_GUILTY_CONTEXT_RESET GUILTY_CONTEXT_RESET} indicates that a reset has been detected that is attributable to the current GL context.
  • *
  • {@link #GL_INNOCENT_CONTEXT_RESET INNOCENT_CONTEXT_RESET} indicates a reset has been detected that is not attributable to the current GL context.
  • *
  • {@link #GL_UNKNOWN_CONTEXT_RESET UNKNOWN_CONTEXT_RESET} indicates a detected graphics reset whose cause is unknown.
  • *
* *

If a reset status other than NO_ERROR is returned and subsequent calls return NO_ERROR, the context reset was encountered and completed. If a reset * status is repeatedly returned, the context may be in the process of resetting.

* *

Reset notification behavior is determined at context creation time, and may be queried by calling GetIntegerv with the symbolic constant * {@link #GL_RESET_NOTIFICATION_STRATEGY RESET_NOTIFICATION_STRATEGY}.

* *

If the reset notification behavior is {@link #GL_NO_RESET_NOTIFICATION NO_RESET_NOTIFICATION}, then the implementation will never deliver notification of reset events, and * GetGraphicsResetStatus will always return NO_ERROR.

* *

If the behavior is {@link #GL_LOSE_CONTEXT_ON_RESET LOSE_CONTEXT_ON_RESET}, a graphics reset will result in a lost context and require creating a new context as described * above. In this case GetGraphicsResetStatus will return an appropriate value from those described above.

* *

If a graphics reset notification occurs in a context, a notification must also occur in all other contexts which share objects with that context.

* *

After a graphics reset has occurred on a context, subsequent GL commands on that context (or any context which shares with that context) will generate a * {@link #GL_CONTEXT_LOST CONTEXT_LOST} error. Such commands will not have side effects (in particular, they will not modify memory passed by pointer for query results, * and may not block indefinitely or cause termination of the application. Exceptions to this behavior include:

* *
    *
  • {@link GL11#glGetError GetError} and GetGraphicsResetStatus behave normally following a graphics reset, so that the application can determine a reset has * occurred, and when it is safe to destroy and recreate the context.
  • *
  • Any commands which might cause a polling application to block indefinitely will generate a CONTEXT_LOST error, but will also return a value * indicating completion to the application.
  • *
*/ public static native int glGetGraphicsResetStatus(); // --- [ glGetnMapdv ] --- /** * Unsafe version of: {@link #glGetnMapdv GetnMapdv} * * @param bufSize the maximum number of bytes to write into {@code data} */ public static native void nglGetnMapdv(int target, int query, int bufSize, long data); /** *

Reference Page

* * Robust version of {@link GL11#glGetMapdv GetMapdv} * * @param target the evaluator map * @param query the information to query * @param data a buffer in which to place the returned data */ public static void glGetnMapdv(int target, int query, DoubleBuffer data) { nglGetnMapdv(target, query, data.remaining(), memAddress(data)); } /** *

Reference Page

* * Robust version of {@link GL11#glGetMapdv GetMapdv} * * @param target the evaluator map * @param query the information to query */ public static double glGetnMapd(int target, int query) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { DoubleBuffer data = stack.callocDouble(1); nglGetnMapdv(target, query, 1, memAddress(data)); return data.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetnMapfv ] --- /** * Unsafe version of: {@link #glGetnMapfv GetnMapfv} * * @param bufSize the maximum number of bytes to write into {@code data} */ public static native void nglGetnMapfv(int target, int query, int bufSize, long data); /** *

Reference Page

* * Robust version of {@link GL11#glGetMapfv GetMapfv} * * @param target the evaluator map * @param query the information to query * @param data a buffer in which to place the returned data */ public static void glGetnMapfv(int target, int query, FloatBuffer data) { nglGetnMapfv(target, query, data.remaining(), memAddress(data)); } /** *

Reference Page

* * Robust version of {@link GL11#glGetMapfv GetMapfv} * * @param target the evaluator map * @param query the information to query */ public static float glGetnMapf(int target, int query) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { FloatBuffer data = stack.callocFloat(1); nglGetnMapfv(target, query, 1, memAddress(data)); return data.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetnMapiv ] --- /** * Unsafe version of: {@link #glGetnMapiv GetnMapiv} * * @param bufSize the maximum number of bytes to write into {@code data} */ public static native void nglGetnMapiv(int target, int query, int bufSize, long data); /** *

Reference Page

* * Robust version of {@link GL11#glGetMapiv GetMapiv} * * @param target the evaluator target. One of:
{@link GL11#GL_MAP1_VERTEX_3 MAP1_VERTEX_3}{@link GL11#GL_MAP1_VERTEX_4 MAP1_VERTEX_4}{@link GL11#GL_MAP1_COLOR_4 MAP1_COLOR_4}{@link GL11#GL_MAP1_NORMAL MAP1_NORMAL}{@link GL11#GL_MAP1_TEXTURE_COORD_1 MAP1_TEXTURE_COORD_1}
{@link GL11#GL_MAP1_TEXTURE_COORD_2 MAP1_TEXTURE_COORD_2}{@link GL11#GL_MAP1_TEXTURE_COORD_3 MAP1_TEXTURE_COORD_3}{@link GL11#GL_MAP1_TEXTURE_COORD_4 MAP1_TEXTURE_COORD_4}{@link GL11#GL_MAP2_VERTEX_3 MAP2_VERTEX_3}{@link GL11#GL_MAP2_VERTEX_4 MAP2_VERTEX_4}
{@link GL11#GL_MAP2_COLOR_4 MAP2_COLOR_4}{@link GL11#GL_MAP2_NORMAL MAP2_NORMAL}{@link GL11#GL_MAP2_TEXTURE_COORD_1 MAP2_TEXTURE_COORD_1}{@link GL11#GL_MAP2_TEXTURE_COORD_2 MAP2_TEXTURE_COORD_2}{@link GL11#GL_MAP2_TEXTURE_COORD_3 MAP2_TEXTURE_COORD_3}
{@link GL11#GL_MAP2_TEXTURE_COORD_4 MAP2_TEXTURE_COORD_4}
* @param query the information to query. One of:
{@link GL11#GL_ORDER ORDER}{@link GL11#GL_COEFF COEFF}{@link GL11#GL_DOMAIN DOMAIN}
* @param data a buffer in which to place the returned data */ public static void glGetnMapiv(int target, int query, IntBuffer data) { nglGetnMapiv(target, query, data.remaining(), memAddress(data)); } /** *

Reference Page

* * Robust version of {@link GL11#glGetMapiv GetMapiv} * * @param target the evaluator target. One of:
{@link GL11#GL_MAP1_VERTEX_3 MAP1_VERTEX_3}{@link GL11#GL_MAP1_VERTEX_4 MAP1_VERTEX_4}{@link GL11#GL_MAP1_COLOR_4 MAP1_COLOR_4}{@link GL11#GL_MAP1_NORMAL MAP1_NORMAL}{@link GL11#GL_MAP1_TEXTURE_COORD_1 MAP1_TEXTURE_COORD_1}
{@link GL11#GL_MAP1_TEXTURE_COORD_2 MAP1_TEXTURE_COORD_2}{@link GL11#GL_MAP1_TEXTURE_COORD_3 MAP1_TEXTURE_COORD_3}{@link GL11#GL_MAP1_TEXTURE_COORD_4 MAP1_TEXTURE_COORD_4}{@link GL11#GL_MAP2_VERTEX_3 MAP2_VERTEX_3}{@link GL11#GL_MAP2_VERTEX_4 MAP2_VERTEX_4}
{@link GL11#GL_MAP2_COLOR_4 MAP2_COLOR_4}{@link GL11#GL_MAP2_NORMAL MAP2_NORMAL}{@link GL11#GL_MAP2_TEXTURE_COORD_1 MAP2_TEXTURE_COORD_1}{@link GL11#GL_MAP2_TEXTURE_COORD_2 MAP2_TEXTURE_COORD_2}{@link GL11#GL_MAP2_TEXTURE_COORD_3 MAP2_TEXTURE_COORD_3}
{@link GL11#GL_MAP2_TEXTURE_COORD_4 MAP2_TEXTURE_COORD_4}
* @param query the information to query. One of:
{@link GL11#GL_ORDER ORDER}{@link GL11#GL_COEFF COEFF}{@link GL11#GL_DOMAIN DOMAIN}
*/ public static int glGetnMapi(int target, int query) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { IntBuffer data = stack.callocInt(1); nglGetnMapiv(target, query, 1, memAddress(data)); return data.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetnPixelMapfv ] --- /** * Unsafe version of: {@link #glGetnPixelMapfv GetnPixelMapfv} * * @param bufSize the maximum number of bytes to write into {@code data} */ public static native void nglGetnPixelMapfv(int map, int bufSize, long data); /** *

Reference Page

* * Robust version of {@link GL11#glGetPixelMapfv GetPixelMapfv} * * @param map the pixel map parameter to query. One of:
{@link GL11#GL_PIXEL_MAP_I_TO_I PIXEL_MAP_I_TO_I}{@link GL11#GL_PIXEL_MAP_S_TO_S PIXEL_MAP_S_TO_S}{@link GL11#GL_PIXEL_MAP_I_TO_R PIXEL_MAP_I_TO_R}{@link GL11#GL_PIXEL_MAP_I_TO_G PIXEL_MAP_I_TO_G}{@link GL11#GL_PIXEL_MAP_I_TO_B PIXEL_MAP_I_TO_B}
{@link GL11#GL_PIXEL_MAP_I_TO_A PIXEL_MAP_I_TO_A}{@link GL11#GL_PIXEL_MAP_R_TO_R PIXEL_MAP_R_TO_R}{@link GL11#GL_PIXEL_MAP_G_TO_G PIXEL_MAP_G_TO_G}{@link GL11#GL_PIXEL_MAP_B_TO_B PIXEL_MAP_B_TO_B}{@link GL11#GL_PIXEL_MAP_A_TO_A PIXEL_MAP_A_TO_A}
* @param data a buffer in which to place the returned data */ public static void glGetnPixelMapfv(int map, FloatBuffer data) { nglGetnPixelMapfv(map, data.remaining(), memAddress(data)); } // --- [ glGetnPixelMapuiv ] --- /** * Unsafe version of: {@link #glGetnPixelMapuiv GetnPixelMapuiv} * * @param bufSize the maximum number of bytes to write into {@code data} */ public static native void nglGetnPixelMapuiv(int map, int bufSize, long data); /** *

Reference Page

* * Robust version of {@link GL11#glGetPixelMapuiv GetPixelMapuiv} * * @param map the pixel map parameter to query * @param data a buffer in which to place the returned data */ public static void glGetnPixelMapuiv(int map, IntBuffer data) { nglGetnPixelMapuiv(map, data.remaining(), memAddress(data)); } // --- [ glGetnPixelMapusv ] --- /** * Unsafe version of: {@link #glGetnPixelMapusv GetnPixelMapusv} * * @param bufSize the maximum number of bytes to write into {@code data} */ public static native void nglGetnPixelMapusv(int map, int bufSize, long data); /** *

Reference Page

* * Robust version of {@link GL11#glGetPixelMapusv GetPixelMapusv} * * @param map the pixel map parameter to query * @param data a buffer in which to place the returned data */ public static void glGetnPixelMapusv(int map, ShortBuffer data) { nglGetnPixelMapusv(map, data.remaining(), memAddress(data)); } // --- [ glGetnPolygonStipple ] --- /** * Unsafe version of: {@link #glGetnPolygonStipple GetnPolygonStipple} * * @param bufSize the maximum number of bytes to write into {@code pattern} */ public static native void nglGetnPolygonStipple(int bufSize, long pattern); /** *

Reference Page

* * Robust version of {@link GL11#glGetPolygonStipple GetPolygonStipple} * * @param bufSize the maximum number of bytes to write into {@code pattern} * @param pattern a buffer in which to place the returned pattern */ public static void glGetnPolygonStipple(int bufSize, long pattern) { nglGetnPolygonStipple(bufSize, pattern); } /** *

Reference Page

* * Robust version of {@link GL11#glGetPolygonStipple GetPolygonStipple} * * @param pattern a buffer in which to place the returned pattern */ public static void glGetnPolygonStipple(ByteBuffer pattern) { nglGetnPolygonStipple(pattern.remaining(), memAddress(pattern)); } // --- [ glGetnTexImage ] --- /** * Unsafe version of: {@link #glGetnTexImage GetnTexImage} * * @param bufSize the maximum number of bytes to write into {@code img} */ public static native void nglGetnTexImage(int tex, int level, int format, int type, int bufSize, long img); /** *

Reference Page

* * Robust version of {@link GL11#glGetTexImage GetTexImage} * * @param tex the texture (or texture face) to be obtained. One of:
{@link GL11#GL_TEXTURE_1D TEXTURE_1D}{@link GL11#GL_TEXTURE_2D TEXTURE_2D}{@link GL12#GL_TEXTURE_3D TEXTURE_3D}{@link GL30#GL_TEXTURE_1D_ARRAY TEXTURE_1D_ARRAY}
{@link GL30#GL_TEXTURE_2D_ARRAY TEXTURE_2D_ARRAY}{@link GL31#GL_TEXTURE_RECTANGLE TEXTURE_RECTANGLE}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_X TEXTURE_CUBE_MAP_POSITIVE_X}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_X TEXTURE_CUBE_MAP_NEGATIVE_X}
{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Y TEXTURE_CUBE_MAP_POSITIVE_Y}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Y TEXTURE_CUBE_MAP_NEGATIVE_Y}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Z TEXTURE_CUBE_MAP_POSITIVE_Z}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Z TEXTURE_CUBE_MAP_NEGATIVE_Z}
* @param level the level-of-detail number * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param bufSize the maximum number of bytes to write into {@code img} * @param img a buffer in which to place the returned data */ public static void glGetnTexImage(int tex, int level, int format, int type, int bufSize, long img) { nglGetnTexImage(tex, level, format, type, bufSize, img); } /** *

Reference Page

* * Robust version of {@link GL11#glGetTexImage GetTexImage} * * @param tex the texture (or texture face) to be obtained. One of:
{@link GL11#GL_TEXTURE_1D TEXTURE_1D}{@link GL11#GL_TEXTURE_2D TEXTURE_2D}{@link GL12#GL_TEXTURE_3D TEXTURE_3D}{@link GL30#GL_TEXTURE_1D_ARRAY TEXTURE_1D_ARRAY}
{@link GL30#GL_TEXTURE_2D_ARRAY TEXTURE_2D_ARRAY}{@link GL31#GL_TEXTURE_RECTANGLE TEXTURE_RECTANGLE}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_X TEXTURE_CUBE_MAP_POSITIVE_X}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_X TEXTURE_CUBE_MAP_NEGATIVE_X}
{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Y TEXTURE_CUBE_MAP_POSITIVE_Y}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Y TEXTURE_CUBE_MAP_NEGATIVE_Y}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Z TEXTURE_CUBE_MAP_POSITIVE_Z}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Z TEXTURE_CUBE_MAP_NEGATIVE_Z}
* @param level the level-of-detail number * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param img a buffer in which to place the returned data */ public static void glGetnTexImage(int tex, int level, int format, int type, ByteBuffer img) { nglGetnTexImage(tex, level, format, type, img.remaining(), memAddress(img)); } /** *

Reference Page

* * Robust version of {@link GL11#glGetTexImage GetTexImage} * * @param tex the texture (or texture face) to be obtained. One of:
{@link GL11#GL_TEXTURE_1D TEXTURE_1D}{@link GL11#GL_TEXTURE_2D TEXTURE_2D}{@link GL12#GL_TEXTURE_3D TEXTURE_3D}{@link GL30#GL_TEXTURE_1D_ARRAY TEXTURE_1D_ARRAY}
{@link GL30#GL_TEXTURE_2D_ARRAY TEXTURE_2D_ARRAY}{@link GL31#GL_TEXTURE_RECTANGLE TEXTURE_RECTANGLE}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_X TEXTURE_CUBE_MAP_POSITIVE_X}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_X TEXTURE_CUBE_MAP_NEGATIVE_X}
{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Y TEXTURE_CUBE_MAP_POSITIVE_Y}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Y TEXTURE_CUBE_MAP_NEGATIVE_Y}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Z TEXTURE_CUBE_MAP_POSITIVE_Z}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Z TEXTURE_CUBE_MAP_NEGATIVE_Z}
* @param level the level-of-detail number * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param img a buffer in which to place the returned data */ public static void glGetnTexImage(int tex, int level, int format, int type, ShortBuffer img) { nglGetnTexImage(tex, level, format, type, img.remaining() << 1, memAddress(img)); } /** *

Reference Page

* * Robust version of {@link GL11#glGetTexImage GetTexImage} * * @param tex the texture (or texture face) to be obtained. One of:
{@link GL11#GL_TEXTURE_1D TEXTURE_1D}{@link GL11#GL_TEXTURE_2D TEXTURE_2D}{@link GL12#GL_TEXTURE_3D TEXTURE_3D}{@link GL30#GL_TEXTURE_1D_ARRAY TEXTURE_1D_ARRAY}
{@link GL30#GL_TEXTURE_2D_ARRAY TEXTURE_2D_ARRAY}{@link GL31#GL_TEXTURE_RECTANGLE TEXTURE_RECTANGLE}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_X TEXTURE_CUBE_MAP_POSITIVE_X}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_X TEXTURE_CUBE_MAP_NEGATIVE_X}
{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Y TEXTURE_CUBE_MAP_POSITIVE_Y}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Y TEXTURE_CUBE_MAP_NEGATIVE_Y}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Z TEXTURE_CUBE_MAP_POSITIVE_Z}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Z TEXTURE_CUBE_MAP_NEGATIVE_Z}
* @param level the level-of-detail number * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param img a buffer in which to place the returned data */ public static void glGetnTexImage(int tex, int level, int format, int type, IntBuffer img) { nglGetnTexImage(tex, level, format, type, img.remaining() << 2, memAddress(img)); } /** *

Reference Page

* * Robust version of {@link GL11#glGetTexImage GetTexImage} * * @param tex the texture (or texture face) to be obtained. One of:
{@link GL11#GL_TEXTURE_1D TEXTURE_1D}{@link GL11#GL_TEXTURE_2D TEXTURE_2D}{@link GL12#GL_TEXTURE_3D TEXTURE_3D}{@link GL30#GL_TEXTURE_1D_ARRAY TEXTURE_1D_ARRAY}
{@link GL30#GL_TEXTURE_2D_ARRAY TEXTURE_2D_ARRAY}{@link GL31#GL_TEXTURE_RECTANGLE TEXTURE_RECTANGLE}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_X TEXTURE_CUBE_MAP_POSITIVE_X}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_X TEXTURE_CUBE_MAP_NEGATIVE_X}
{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Y TEXTURE_CUBE_MAP_POSITIVE_Y}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Y TEXTURE_CUBE_MAP_NEGATIVE_Y}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Z TEXTURE_CUBE_MAP_POSITIVE_Z}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Z TEXTURE_CUBE_MAP_NEGATIVE_Z}
* @param level the level-of-detail number * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param img a buffer in which to place the returned data */ public static void glGetnTexImage(int tex, int level, int format, int type, FloatBuffer img) { nglGetnTexImage(tex, level, format, type, img.remaining() << 2, memAddress(img)); } /** *

Reference Page

* * Robust version of {@link GL11#glGetTexImage GetTexImage} * * @param tex the texture (or texture face) to be obtained. One of:
{@link GL11#GL_TEXTURE_1D TEXTURE_1D}{@link GL11#GL_TEXTURE_2D TEXTURE_2D}{@link GL12#GL_TEXTURE_3D TEXTURE_3D}{@link GL30#GL_TEXTURE_1D_ARRAY TEXTURE_1D_ARRAY}
{@link GL30#GL_TEXTURE_2D_ARRAY TEXTURE_2D_ARRAY}{@link GL31#GL_TEXTURE_RECTANGLE TEXTURE_RECTANGLE}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_X TEXTURE_CUBE_MAP_POSITIVE_X}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_X TEXTURE_CUBE_MAP_NEGATIVE_X}
{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Y TEXTURE_CUBE_MAP_POSITIVE_Y}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Y TEXTURE_CUBE_MAP_NEGATIVE_Y}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Z TEXTURE_CUBE_MAP_POSITIVE_Z}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Z TEXTURE_CUBE_MAP_NEGATIVE_Z}
* @param level the level-of-detail number * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param img a buffer in which to place the returned data */ public static void glGetnTexImage(int tex, int level, int format, int type, DoubleBuffer img) { nglGetnTexImage(tex, level, format, type, img.remaining() << 3, memAddress(img)); } // --- [ glReadnPixels ] --- /** * Unsafe version of: {@link #glReadnPixels ReadnPixels} * * @param bufSize the maximum number of bytes to write into {@code data} */ public static native void nglReadnPixels(int x, int y, int width, int height, int format, int type, int bufSize, long pixels); /** *

Reference Page

* * Behaves identically to {@link GL11#glReadPixels ReadPixels} except that it does not write more than {@code bufSize} bytes into {@code data} * * @param x the left pixel coordinate * @param y the lower pixel coordinate * @param width the number of pixels to read in the x-dimension * @param height the number of pixels to read in the y-dimension * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param bufSize the maximum number of bytes to write into {@code data} * @param pixels a buffer in which to place the returned pixel data */ public static void glReadnPixels(int x, int y, int width, int height, int format, int type, int bufSize, long pixels) { nglReadnPixels(x, y, width, height, format, type, bufSize, pixels); } /** *

Reference Page

* * Behaves identically to {@link GL11#glReadPixels ReadPixels} except that it does not write more than {@code bufSize} bytes into {@code data} * * @param x the left pixel coordinate * @param y the lower pixel coordinate * @param width the number of pixels to read in the x-dimension * @param height the number of pixels to read in the y-dimension * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels a buffer in which to place the returned pixel data */ public static void glReadnPixels(int x, int y, int width, int height, int format, int type, ByteBuffer pixels) { nglReadnPixels(x, y, width, height, format, type, pixels.remaining(), memAddress(pixels)); } /** *

Reference Page

* * Behaves identically to {@link GL11#glReadPixels ReadPixels} except that it does not write more than {@code bufSize} bytes into {@code data} * * @param x the left pixel coordinate * @param y the lower pixel coordinate * @param width the number of pixels to read in the x-dimension * @param height the number of pixels to read in the y-dimension * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels a buffer in which to place the returned pixel data */ public static void glReadnPixels(int x, int y, int width, int height, int format, int type, ShortBuffer pixels) { nglReadnPixels(x, y, width, height, format, type, pixels.remaining() << 1, memAddress(pixels)); } /** *

Reference Page

* * Behaves identically to {@link GL11#glReadPixels ReadPixels} except that it does not write more than {@code bufSize} bytes into {@code data} * * @param x the left pixel coordinate * @param y the lower pixel coordinate * @param width the number of pixels to read in the x-dimension * @param height the number of pixels to read in the y-dimension * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels a buffer in which to place the returned pixel data */ public static void glReadnPixels(int x, int y, int width, int height, int format, int type, IntBuffer pixels) { nglReadnPixels(x, y, width, height, format, type, pixels.remaining() << 2, memAddress(pixels)); } /** *

Reference Page

* * Behaves identically to {@link GL11#glReadPixels ReadPixels} except that it does not write more than {@code bufSize} bytes into {@code data} * * @param x the left pixel coordinate * @param y the lower pixel coordinate * @param width the number of pixels to read in the x-dimension * @param height the number of pixels to read in the y-dimension * @param format the pixel format. One of:
{@link GL11#GL_STENCIL_INDEX STENCIL_INDEX}{@link GL11#GL_DEPTH_COMPONENT DEPTH_COMPONENT}{@link GL30#GL_DEPTH_STENCIL DEPTH_STENCIL}{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL30#GL_RG RG}
{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}{@link GL30#GL_RED_INTEGER RED_INTEGER}{@link GL30#GL_GREEN_INTEGER GREEN_INTEGER}
{@link GL30#GL_BLUE_INTEGER BLUE_INTEGER}{@link GL30#GL_ALPHA_INTEGER ALPHA_INTEGER}{@link GL30#GL_RG_INTEGER RG_INTEGER}{@link GL30#GL_RGB_INTEGER RGB_INTEGER}{@link GL30#GL_RGBA_INTEGER RGBA_INTEGER}{@link GL30#GL_BGR_INTEGER BGR_INTEGER}{@link GL30#GL_BGRA_INTEGER BGRA_INTEGER}
* @param type the pixel type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL30#GL_HALF_FLOAT HALF_FLOAT}{@link GL11#GL_FLOAT FLOAT}
{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}
{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}
{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
{@link GL30#GL_UNSIGNED_INT_24_8 UNSIGNED_INT_24_8}{@link GL30#GL_UNSIGNED_INT_10F_11F_11F_REV UNSIGNED_INT_10F_11F_11F_REV}{@link GL30#GL_UNSIGNED_INT_5_9_9_9_REV UNSIGNED_INT_5_9_9_9_REV}{@link GL30#GL_FLOAT_32_UNSIGNED_INT_24_8_REV FLOAT_32_UNSIGNED_INT_24_8_REV}
{@link GL11#GL_BITMAP BITMAP}
* @param pixels a buffer in which to place the returned pixel data */ public static void glReadnPixels(int x, int y, int width, int height, int format, int type, FloatBuffer pixels) { nglReadnPixels(x, y, width, height, format, type, pixels.remaining() << 2, memAddress(pixels)); } // --- [ glGetnColorTable ] --- /** * Unsafe version of: {@link #glGetnColorTable GetnColorTable} * * @param bufSize the maximum number of bytes to write into {@code table} */ public static native void nglGetnColorTable(int target, int format, int type, int bufSize, long table); /** *

Reference Page

* * Robust version of {@link ARBImaging#glGetColorTable GetColorTable} * * @param target the color table target. One of:
{@link ARBImaging#GL_COLOR_TABLE COLOR_TABLE}{@link ARBImaging#GL_POST_CONVOLUTION_COLOR_TABLE POST_CONVOLUTION_COLOR_TABLE}{@link ARBImaging#GL_POST_COLOR_MATRIX_COLOR_TABLE POST_COLOR_MATRIX_COLOR_TABLE}
* @param format the color data format. One of:
{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}
* @param type the color data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}
{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
* @param bufSize the maximum number of bytes to write into {@code table} * @param table a buffer in which to place the returned data */ public static void glGetnColorTable(int target, int format, int type, int bufSize, long table) { nglGetnColorTable(target, format, type, bufSize, table); } /** *

Reference Page

* * Robust version of {@link ARBImaging#glGetColorTable GetColorTable} * * @param target the color table target. One of:
{@link ARBImaging#GL_COLOR_TABLE COLOR_TABLE}{@link ARBImaging#GL_POST_CONVOLUTION_COLOR_TABLE POST_CONVOLUTION_COLOR_TABLE}{@link ARBImaging#GL_POST_COLOR_MATRIX_COLOR_TABLE POST_COLOR_MATRIX_COLOR_TABLE}
* @param format the color data format. One of:
{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}
* @param type the color data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}
{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
* @param table a buffer in which to place the returned data */ public static void glGetnColorTable(int target, int format, int type, ByteBuffer table) { nglGetnColorTable(target, format, type, table.remaining(), memAddress(table)); } /** *

Reference Page

* * Robust version of {@link ARBImaging#glGetColorTable GetColorTable} * * @param target the color table target. One of:
{@link ARBImaging#GL_COLOR_TABLE COLOR_TABLE}{@link ARBImaging#GL_POST_CONVOLUTION_COLOR_TABLE POST_CONVOLUTION_COLOR_TABLE}{@link ARBImaging#GL_POST_COLOR_MATRIX_COLOR_TABLE POST_COLOR_MATRIX_COLOR_TABLE}
* @param format the color data format. One of:
{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}
* @param type the color data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}
{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
* @param table a buffer in which to place the returned data */ public static void glGetnColorTable(int target, int format, int type, ShortBuffer table) { nglGetnColorTable(target, format, type, table.remaining() << 1, memAddress(table)); } /** *

Reference Page

* * Robust version of {@link ARBImaging#glGetColorTable GetColorTable} * * @param target the color table target. One of:
{@link ARBImaging#GL_COLOR_TABLE COLOR_TABLE}{@link ARBImaging#GL_POST_CONVOLUTION_COLOR_TABLE POST_CONVOLUTION_COLOR_TABLE}{@link ARBImaging#GL_POST_COLOR_MATRIX_COLOR_TABLE POST_COLOR_MATRIX_COLOR_TABLE}
* @param format the color data format. One of:
{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}
* @param type the color data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}
{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
* @param table a buffer in which to place the returned data */ public static void glGetnColorTable(int target, int format, int type, IntBuffer table) { nglGetnColorTable(target, format, type, table.remaining() << 2, memAddress(table)); } /** *

Reference Page

* * Robust version of {@link ARBImaging#glGetColorTable GetColorTable} * * @param target the color table target. One of:
{@link ARBImaging#GL_COLOR_TABLE COLOR_TABLE}{@link ARBImaging#GL_POST_CONVOLUTION_COLOR_TABLE POST_CONVOLUTION_COLOR_TABLE}{@link ARBImaging#GL_POST_COLOR_MATRIX_COLOR_TABLE POST_COLOR_MATRIX_COLOR_TABLE}
* @param format the color data format. One of:
{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}
* @param type the color data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}
{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
* @param table a buffer in which to place the returned data */ public static void glGetnColorTable(int target, int format, int type, FloatBuffer table) { nglGetnColorTable(target, format, type, table.remaining() << 2, memAddress(table)); } // --- [ glGetnConvolutionFilter ] --- /** * Unsafe version of: {@link #glGetnConvolutionFilter GetnConvolutionFilter} * * @param bufSize the maximum number of bytes to write into {@code image} */ public static native void nglGetnConvolutionFilter(int target, int format, int type, int bufSize, long image); /** *

Reference Page

* * Robust version of {@link ARBImaging#glGetConvolutionFilter GetConvolutionFilter} * * @param target the convolution target. One of:
{@link ARBImaging#GL_CONVOLUTION_1D CONVOLUTION_1D}{@link ARBImaging#GL_CONVOLUTION_2D CONVOLUTION_2D}
* @param format the filter data format. One of:
{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}
* @param type the filter data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}
{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
* @param bufSize the maximum number of bytes to write into {@code image} * @param image a buffer in which to place the returned data */ public static void glGetnConvolutionFilter(int target, int format, int type, int bufSize, long image) { nglGetnConvolutionFilter(target, format, type, bufSize, image); } /** *

Reference Page

* * Robust version of {@link ARBImaging#glGetConvolutionFilter GetConvolutionFilter} * * @param target the convolution target. One of:
{@link ARBImaging#GL_CONVOLUTION_1D CONVOLUTION_1D}{@link ARBImaging#GL_CONVOLUTION_2D CONVOLUTION_2D}
* @param format the filter data format. One of:
{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}
* @param type the filter data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}
{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
* @param image a buffer in which to place the returned data */ public static void glGetnConvolutionFilter(int target, int format, int type, ByteBuffer image) { nglGetnConvolutionFilter(target, format, type, image.remaining(), memAddress(image)); } // --- [ glGetnSeparableFilter ] --- /** * Unsafe version of: {@link #glGetnSeparableFilter GetnSeparableFilter} * * @param rowBufSize the maximum number of bytes to write into {@code row} * @param columnBufSize the maximum number of bytes to write into {@code column} */ public static native void nglGetnSeparableFilter(int target, int format, int type, int rowBufSize, long row, int columnBufSize, long column, long span); /** *

Reference Page

* * Robust version of {@link ARBImaging#glGetSeparableFilter GetSeparableFilter} * * @param target the filter target. Must be:
{@link ARBImaging#GL_SEPARABLE_2D SEPARABLE_2D}
* @param format the filter data format. One of:
{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}
* @param type the filter data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}
{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
* @param rowBufSize the maximum number of bytes to write into {@code row} * @param row a buffer in which to return the filter row * @param columnBufSize the maximum number of bytes to write into {@code column} * @param column a buffer in which to return the filter column * @param span */ public static void glGetnSeparableFilter(int target, int format, int type, int rowBufSize, long row, int columnBufSize, long column, ByteBuffer span) { nglGetnSeparableFilter(target, format, type, rowBufSize, row, columnBufSize, column, memAddressSafe(span)); } /** *

Reference Page

* * Robust version of {@link ARBImaging#glGetSeparableFilter GetSeparableFilter} * * @param target the filter target. Must be:
{@link ARBImaging#GL_SEPARABLE_2D SEPARABLE_2D}
* @param format the filter data format. One of:
{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}
* @param type the filter data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}
{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
* @param row a buffer in which to return the filter row * @param column a buffer in which to return the filter column * @param span */ public static void glGetnSeparableFilter(int target, int format, int type, ByteBuffer row, ByteBuffer column, ByteBuffer span) { nglGetnSeparableFilter(target, format, type, row.remaining(), memAddress(row), column.remaining(), memAddress(column), memAddressSafe(span)); } // --- [ glGetnHistogram ] --- /** * Unsafe version of: {@link #glGetnHistogram GetnHistogram} * * @param bufSize the maximum number of bytes to write into {@code values} */ public static native void nglGetnHistogram(int target, boolean reset, int format, int type, int bufSize, long values); /** *

Reference Page

* * Robust version of {@link ARBImaging#glGetHistogram GetHistogram} * * @param target the histogram target. Must be:
{@link ARBImaging#GL_HISTOGRAM HISTOGRAM}
* @param reset if {@link GL11#GL_TRUE TRUE}, then all counters of all elements of the histogram are reset to zero. Counters are reset whether returned or not. * @param format the pixel data format. One of:
{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}
* @param type the pixel data types. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}
{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
* @param bufSize the maximum number of bytes to write into {@code values} * @param values a buffer in which to place the returned data */ public static void glGetnHistogram(int target, boolean reset, int format, int type, int bufSize, long values) { nglGetnHistogram(target, reset, format, type, bufSize, values); } /** *

Reference Page

* * Robust version of {@link ARBImaging#glGetHistogram GetHistogram} * * @param target the histogram target. Must be:
{@link ARBImaging#GL_HISTOGRAM HISTOGRAM}
* @param reset if {@link GL11#GL_TRUE TRUE}, then all counters of all elements of the histogram are reset to zero. Counters are reset whether returned or not. * @param format the pixel data format. One of:
{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}
* @param type the pixel data types. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}
{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
* @param values a buffer in which to place the returned data */ public static void glGetnHistogram(int target, boolean reset, int format, int type, ByteBuffer values) { nglGetnHistogram(target, reset, format, type, values.remaining(), memAddress(values)); } // --- [ glGetnMinmax ] --- /** * Unsafe version of: {@link #glGetnMinmax GetnMinmax} * * @param bufSize the maximum number of bytes to write into {@code values} */ public static native void nglGetnMinmax(int target, boolean reset, int format, int type, int bufSize, long values); /** *

Reference Page

* * Robust version of {@link ARBImaging#glGetMinmax GetMinmax} * * @param target the minmax target. Must be:
{@link ARBImaging#GL_MINMAX MINMAX}
* @param reset If {@link GL11#GL_TRUE TRUE}, then each minimum value is reset to the maximum representable value, and each maximum value is reset to the minimum * representable value. All values are reset, whether returned or not. * @param format the pixel data format. One of:
{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}
{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
* @param bufSize the maximum number of bytes to write into {@code values} * @param values a buffer in which to place the returned data */ public static void glGetnMinmax(int target, boolean reset, int format, int type, int bufSize, long values) { nglGetnMinmax(target, reset, format, type, bufSize, values); } /** *

Reference Page

* * Robust version of {@link ARBImaging#glGetMinmax GetMinmax} * * @param target the minmax target. Must be:
{@link ARBImaging#GL_MINMAX MINMAX}
* @param reset If {@link GL11#GL_TRUE TRUE}, then each minimum value is reset to the maximum representable value, and each maximum value is reset to the minimum * representable value. All values are reset, whether returned or not. * @param format the pixel data format. One of:
{@link GL11#GL_RED RED}{@link GL11#GL_GREEN GREEN}{@link GL11#GL_BLUE BLUE}{@link GL11#GL_ALPHA ALPHA}{@link GL11#GL_RGB RGB}{@link GL11#GL_RGBA RGBA}{@link GL12#GL_BGR BGR}{@link GL12#GL_BGRA BGRA}{@link GL11#GL_LUMINANCE LUMINANCE}{@link GL11#GL_LUMINANCE_ALPHA LUMINANCE_ALPHA}
* @param type the pixel data type. One of:
{@link GL11#GL_UNSIGNED_BYTE UNSIGNED_BYTE}{@link GL11#GL_BYTE BYTE}{@link GL11#GL_UNSIGNED_SHORT UNSIGNED_SHORT}{@link GL11#GL_SHORT SHORT}
{@link GL11#GL_UNSIGNED_INT UNSIGNED_INT}{@link GL11#GL_INT INT}{@link GL12#GL_UNSIGNED_BYTE_3_3_2 UNSIGNED_BYTE_3_3_2}{@link GL12#GL_UNSIGNED_BYTE_2_3_3_REV UNSIGNED_BYTE_2_3_3_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_6_5 UNSIGNED_SHORT_5_6_5}{@link GL12#GL_UNSIGNED_SHORT_5_6_5_REV UNSIGNED_SHORT_5_6_5_REV}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4 UNSIGNED_SHORT_4_4_4_4}{@link GL12#GL_UNSIGNED_SHORT_4_4_4_4_REV UNSIGNED_SHORT_4_4_4_4_REV}
{@link GL12#GL_UNSIGNED_SHORT_5_5_5_1 UNSIGNED_SHORT_5_5_5_1}{@link GL12#GL_UNSIGNED_SHORT_1_5_5_5_REV UNSIGNED_SHORT_1_5_5_5_REV}{@link GL12#GL_UNSIGNED_INT_8_8_8_8 UNSIGNED_INT_8_8_8_8}{@link GL12#GL_UNSIGNED_INT_8_8_8_8_REV UNSIGNED_INT_8_8_8_8_REV}
{@link GL12#GL_UNSIGNED_INT_10_10_10_2 UNSIGNED_INT_10_10_10_2}{@link GL12#GL_UNSIGNED_INT_2_10_10_10_REV UNSIGNED_INT_2_10_10_10_REV}
* @param values a buffer in which to place the returned data */ public static void glGetnMinmax(int target, boolean reset, int format, int type, ByteBuffer values) { nglGetnMinmax(target, reset, format, type, values.remaining(), memAddress(values)); } // --- [ glGetnCompressedTexImage ] --- /** * Unsafe version of: {@link #glGetnCompressedTexImage GetnCompressedTexImage} * * @param bufSize the maximum number of bytes to write into {@code img} */ public static native void nglGetnCompressedTexImage(int target, int level, int bufSize, long img); /** *

Reference Page

* * Robust version of {@link GL13#glGetCompressedTexImage GetCompressedTexImage} * * @param target the target texture. One of:
{@link GL11#GL_TEXTURE_1D TEXTURE_1D}{@link GL11#GL_TEXTURE_2D TEXTURE_2D}{@link GL30#GL_TEXTURE_1D_ARRAY TEXTURE_1D_ARRAY}
{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_X TEXTURE_CUBE_MAP_POSITIVE_X}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_X TEXTURE_CUBE_MAP_NEGATIVE_X}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Y TEXTURE_CUBE_MAP_POSITIVE_Y}
{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Y TEXTURE_CUBE_MAP_NEGATIVE_Y}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Z TEXTURE_CUBE_MAP_POSITIVE_Z}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Z TEXTURE_CUBE_MAP_NEGATIVE_Z}
{@link GL12#GL_TEXTURE_3D TEXTURE_3D}{@link GL30#GL_TEXTURE_2D_ARRAY TEXTURE_2D_ARRAY}{@link GL40#GL_TEXTURE_CUBE_MAP_ARRAY TEXTURE_CUBE_MAP_ARRAY}
* @param level the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. * @param bufSize the maximum number of bytes to write into {@code img} * @param img a buffer in which to place the returned data */ public static void glGetnCompressedTexImage(int target, int level, int bufSize, long img) { nglGetnCompressedTexImage(target, level, bufSize, img); } /** *

Reference Page

* * Robust version of {@link GL13#glGetCompressedTexImage GetCompressedTexImage} * * @param target the target texture. One of:
{@link GL11#GL_TEXTURE_1D TEXTURE_1D}{@link GL11#GL_TEXTURE_2D TEXTURE_2D}{@link GL30#GL_TEXTURE_1D_ARRAY TEXTURE_1D_ARRAY}
{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_X TEXTURE_CUBE_MAP_POSITIVE_X}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_X TEXTURE_CUBE_MAP_NEGATIVE_X}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Y TEXTURE_CUBE_MAP_POSITIVE_Y}
{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Y TEXTURE_CUBE_MAP_NEGATIVE_Y}{@link GL13#GL_TEXTURE_CUBE_MAP_POSITIVE_Z TEXTURE_CUBE_MAP_POSITIVE_Z}{@link GL13#GL_TEXTURE_CUBE_MAP_NEGATIVE_Z TEXTURE_CUBE_MAP_NEGATIVE_Z}
{@link GL12#GL_TEXTURE_3D TEXTURE_3D}{@link GL30#GL_TEXTURE_2D_ARRAY TEXTURE_2D_ARRAY}{@link GL40#GL_TEXTURE_CUBE_MAP_ARRAY TEXTURE_CUBE_MAP_ARRAY}
* @param level the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. * @param img a buffer in which to place the returned data */ public static void glGetnCompressedTexImage(int target, int level, ByteBuffer img) { if (CHECKS) { if (DEBUG) { check(img, GL11.glGetTexLevelParameteri(target, level, GL13.GL_TEXTURE_COMPRESSED_IMAGE_SIZE)); } } nglGetnCompressedTexImage(target, level, img.remaining(), memAddress(img)); } // --- [ glGetnUniformfv ] --- /** * Unsafe version of: {@link #glGetnUniformfv GetnUniformfv} * * @param bufSize the maximum number of bytes to write to {@code params} */ public static native void nglGetnUniformfv(int program, int location, int bufSize, long params); /** *

Reference Page

* * Returns the value or values of a uniform of the default uniform block. * * @param program the program object * @param location the uniform location * @param params the buffer in which to place the returned data */ public static void glGetnUniformfv(int program, int location, FloatBuffer params) { nglGetnUniformfv(program, location, params.remaining(), memAddress(params)); } /** *

Reference Page

* * Returns the value or values of a uniform of the default uniform block. * * @param program the program object * @param location the uniform location */ public static float glGetnUniformf(int program, int location) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { FloatBuffer params = stack.callocFloat(1); nglGetnUniformfv(program, location, 1, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetnUniformdv ] --- /** * Unsafe version of: {@link #glGetnUniformdv GetnUniformdv} * * @param bufSize the maximum number of bytes to write to {@code params} */ public static native void nglGetnUniformdv(int program, int location, int bufSize, long params); /** *

Reference Page

* * Double version of {@link #glGetnUniformfv GetnUniformfv}. * * @param program the program object * @param location the uniform location * @param params the buffer in which to place the returned data */ public static void glGetnUniformdv(int program, int location, DoubleBuffer params) { nglGetnUniformdv(program, location, params.remaining(), memAddress(params)); } /** *

Reference Page

* * Double version of {@link #glGetnUniformfv GetnUniformfv}. * * @param program the program object * @param location the uniform location */ public static double glGetnUniformd(int program, int location) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { DoubleBuffer params = stack.callocDouble(1); nglGetnUniformdv(program, location, 1, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetnUniformiv ] --- /** * Unsafe version of: {@link #glGetnUniformiv GetnUniformiv} * * @param bufSize the maximum number of bytes to write to {@code params} */ public static native void nglGetnUniformiv(int program, int location, int bufSize, long params); /** *

Reference Page

* * Integer version of {@link #glGetnUniformfv GetnUniformfv}. * * @param program the program object * @param location the uniform location * @param params the buffer in which to place the returned data */ public static void glGetnUniformiv(int program, int location, FloatBuffer params) { nglGetnUniformiv(program, location, params.remaining(), memAddress(params)); } /** *

Reference Page

* * Integer version of {@link #glGetnUniformfv GetnUniformfv}. * * @param program the program object * @param location the uniform location */ public static float glGetnUniformi(int program, int location) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { FloatBuffer params = stack.callocFloat(1); nglGetnUniformiv(program, location, 1, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } // --- [ glGetnUniformuiv ] --- /** * Unsafe version of: {@link #glGetnUniformuiv GetnUniformuiv} * * @param bufSize the maximum number of bytes to write to {@code params} */ public static native void nglGetnUniformuiv(int program, int location, int bufSize, long params); /** *

Reference Page

* * Unsigned version of {@link #glGetnUniformiv GetnUniformiv}. * * @param program the program object * @param location the uniform location * @param params the buffer in which to place the returned data */ public static void glGetnUniformuiv(int program, int location, FloatBuffer params) { nglGetnUniformuiv(program, location, params.remaining(), memAddress(params)); } /** *

Reference Page

* * Unsigned version of {@link #glGetnUniformiv GetnUniformiv}. * * @param program the program object * @param location the uniform location */ public static float glGetnUniformui(int program, int location) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { FloatBuffer params = stack.callocFloat(1); nglGetnUniformuiv(program, location, 1, memAddress(params)); return params.get(0); } finally { stack.setPointer(stackPointer); } } /** *

Reference Page

* * Array version of: {@link #glCreateTransformFeedbacks CreateTransformFeedbacks} */ public static void glCreateTransformFeedbacks(int[] ids) { long __functionAddress = GL.getICD().glCreateTransformFeedbacks; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, ids.length, ids); } /** *

Reference Page

* * Array version of: {@link #glGetTransformFeedbackiv GetTransformFeedbackiv} */ public static void glGetTransformFeedbackiv(int xfb, int pname, int[] param) { long __functionAddress = GL.getICD().glGetTransformFeedbackiv; if (CHECKS) { check(__functionAddress); check(param, 1); } callPV(__functionAddress, xfb, pname, param); } /** *

Reference Page

* * Array version of: {@link #glGetTransformFeedbacki_v GetTransformFeedbacki_v} */ public static void glGetTransformFeedbacki_v(int xfb, int pname, int index, int[] param) { long __functionAddress = GL.getICD().glGetTransformFeedbacki_v; if (CHECKS) { check(__functionAddress); check(param, 1); } callPV(__functionAddress, xfb, pname, index, param); } /** *

Reference Page

* * Array version of: {@link #glGetTransformFeedbacki64_v GetTransformFeedbacki64_v} */ public static void glGetTransformFeedbacki64_v(int xfb, int pname, int index, long[] param) { long __functionAddress = GL.getICD().glGetTransformFeedbacki64_v; if (CHECKS) { check(__functionAddress); check(param, 1); } callPV(__functionAddress, xfb, pname, index, param); } /** *

Reference Page

* * Array version of: {@link #glCreateBuffers CreateBuffers} */ public static void glCreateBuffers(int[] buffers) { long __functionAddress = GL.getICD().glCreateBuffers; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, buffers.length, buffers); } /** *

Reference Page

* * Array version of: {@link #glNamedBufferStorage NamedBufferStorage} */ public static void glNamedBufferStorage(int buffer, short[] data, int flags) { long __functionAddress = GL.getICD().glNamedBufferStorage; if (CHECKS) { check(__functionAddress); } callPPV(__functionAddress, buffer, (long)(data.length << 1), data, flags); } /** *

Reference Page

* * Array version of: {@link #glNamedBufferStorage NamedBufferStorage} */ public static void glNamedBufferStorage(int buffer, int[] data, int flags) { long __functionAddress = GL.getICD().glNamedBufferStorage; if (CHECKS) { check(__functionAddress); } callPPV(__functionAddress, buffer, (long)(data.length << 2), data, flags); } /** *

Reference Page

* * Array version of: {@link #glNamedBufferStorage NamedBufferStorage} */ public static void glNamedBufferStorage(int buffer, float[] data, int flags) { long __functionAddress = GL.getICD().glNamedBufferStorage; if (CHECKS) { check(__functionAddress); } callPPV(__functionAddress, buffer, (long)(data.length << 2), data, flags); } /** *

Reference Page

* * Array version of: {@link #glNamedBufferStorage NamedBufferStorage} */ public static void glNamedBufferStorage(int buffer, double[] data, int flags) { long __functionAddress = GL.getICD().glNamedBufferStorage; if (CHECKS) { check(__functionAddress); } callPPV(__functionAddress, buffer, (long)(data.length << 3), data, flags); } /** *

Reference Page

* * Array version of: {@link #glNamedBufferData NamedBufferData} */ public static void glNamedBufferData(int buffer, short[] data, int usage) { long __functionAddress = GL.getICD().glNamedBufferData; if (CHECKS) { check(__functionAddress); } callPPV(__functionAddress, buffer, (long)(data.length << 1), data, usage); } /** *

Reference Page

* * Array version of: {@link #glNamedBufferData NamedBufferData} */ public static void glNamedBufferData(int buffer, int[] data, int usage) { long __functionAddress = GL.getICD().glNamedBufferData; if (CHECKS) { check(__functionAddress); } callPPV(__functionAddress, buffer, (long)(data.length << 2), data, usage); } /** *

Reference Page

* * Array version of: {@link #glNamedBufferData NamedBufferData} */ public static void glNamedBufferData(int buffer, float[] data, int usage) { long __functionAddress = GL.getICD().glNamedBufferData; if (CHECKS) { check(__functionAddress); } callPPV(__functionAddress, buffer, (long)(data.length << 2), data, usage); } /** *

Reference Page

* * Array version of: {@link #glNamedBufferData NamedBufferData} */ public static void glNamedBufferData(int buffer, double[] data, int usage) { long __functionAddress = GL.getICD().glNamedBufferData; if (CHECKS) { check(__functionAddress); } callPPV(__functionAddress, buffer, (long)(data.length << 3), data, usage); } /** *

Reference Page

* * Array version of: {@link #glNamedBufferSubData NamedBufferSubData} */ public static void glNamedBufferSubData(int buffer, long offset, short[] data) { long __functionAddress = GL.getICD().glNamedBufferSubData; if (CHECKS) { check(__functionAddress); } callPPPV(__functionAddress, buffer, offset, (long)(data.length << 1), data); } /** *

Reference Page

* * Array version of: {@link #glNamedBufferSubData NamedBufferSubData} */ public static void glNamedBufferSubData(int buffer, long offset, int[] data) { long __functionAddress = GL.getICD().glNamedBufferSubData; if (CHECKS) { check(__functionAddress); } callPPPV(__functionAddress, buffer, offset, (long)(data.length << 2), data); } /** *

Reference Page

* * Array version of: {@link #glNamedBufferSubData NamedBufferSubData} */ public static void glNamedBufferSubData(int buffer, long offset, float[] data) { long __functionAddress = GL.getICD().glNamedBufferSubData; if (CHECKS) { check(__functionAddress); } callPPPV(__functionAddress, buffer, offset, (long)(data.length << 2), data); } /** *

Reference Page

* * Array version of: {@link #glNamedBufferSubData NamedBufferSubData} */ public static void glNamedBufferSubData(int buffer, long offset, double[] data) { long __functionAddress = GL.getICD().glNamedBufferSubData; if (CHECKS) { check(__functionAddress); } callPPPV(__functionAddress, buffer, offset, (long)(data.length << 3), data); } /** *

Reference Page

* * Array version of: {@link #glGetNamedBufferParameteriv GetNamedBufferParameteriv} */ public static void glGetNamedBufferParameteriv(int buffer, int pname, int[] params) { long __functionAddress = GL.getICD().glGetNamedBufferParameteriv; if (CHECKS) { check(__functionAddress); check(params, 1); } callPV(__functionAddress, buffer, pname, params); } /** *

Reference Page

* * Array version of: {@link #glGetNamedBufferParameteri64v GetNamedBufferParameteri64v} */ public static void glGetNamedBufferParameteri64v(int buffer, int pname, long[] params) { long __functionAddress = GL.getICD().glGetNamedBufferParameteri64v; if (CHECKS) { check(__functionAddress); check(params, 1); } callPV(__functionAddress, buffer, pname, params); } /** *

Reference Page

* * Array version of: {@link #glGetNamedBufferSubData GetNamedBufferSubData} */ public static void glGetNamedBufferSubData(int buffer, long offset, short[] data) { long __functionAddress = GL.getICD().glGetNamedBufferSubData; if (CHECKS) { check(__functionAddress); } callPPPV(__functionAddress, buffer, offset, (long)(data.length << 1), data); } /** *

Reference Page

* * Array version of: {@link #glGetNamedBufferSubData GetNamedBufferSubData} */ public static void glGetNamedBufferSubData(int buffer, long offset, int[] data) { long __functionAddress = GL.getICD().glGetNamedBufferSubData; if (CHECKS) { check(__functionAddress); } callPPPV(__functionAddress, buffer, offset, (long)(data.length << 2), data); } /** *

Reference Page

* * Array version of: {@link #glGetNamedBufferSubData GetNamedBufferSubData} */ public static void glGetNamedBufferSubData(int buffer, long offset, float[] data) { long __functionAddress = GL.getICD().glGetNamedBufferSubData; if (CHECKS) { check(__functionAddress); } callPPPV(__functionAddress, buffer, offset, (long)(data.length << 2), data); } /** *

Reference Page

* * Array version of: {@link #glGetNamedBufferSubData GetNamedBufferSubData} */ public static void glGetNamedBufferSubData(int buffer, long offset, double[] data) { long __functionAddress = GL.getICD().glGetNamedBufferSubData; if (CHECKS) { check(__functionAddress); } callPPPV(__functionAddress, buffer, offset, (long)(data.length << 3), data); } /** *

Reference Page

* * Array version of: {@link #glCreateFramebuffers CreateFramebuffers} */ public static void glCreateFramebuffers(int[] framebuffers) { long __functionAddress = GL.getICD().glCreateFramebuffers; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, framebuffers.length, framebuffers); } /** *

Reference Page

* * Array version of: {@link #glNamedFramebufferDrawBuffers NamedFramebufferDrawBuffers} */ public static void glNamedFramebufferDrawBuffers(int framebuffer, int[] bufs) { long __functionAddress = GL.getICD().glNamedFramebufferDrawBuffers; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, framebuffer, bufs.length, bufs); } /** *

Reference Page

* * Array version of: {@link #glInvalidateNamedFramebufferData InvalidateNamedFramebufferData} */ public static void glInvalidateNamedFramebufferData(int framebuffer, int[] attachments) { long __functionAddress = GL.getICD().glInvalidateNamedFramebufferData; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, framebuffer, attachments.length, attachments); } /** *

Reference Page

* * Array version of: {@link #glInvalidateNamedFramebufferSubData InvalidateNamedFramebufferSubData} */ public static void glInvalidateNamedFramebufferSubData(int framebuffer, int[] attachments, int x, int y, int width, int height) { long __functionAddress = GL.getICD().glInvalidateNamedFramebufferSubData; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, framebuffer, attachments.length, attachments, x, y, width, height); } /** *

Reference Page

* * Array version of: {@link #glClearNamedFramebufferiv ClearNamedFramebufferiv} */ public static void glClearNamedFramebufferiv(int framebuffer, int buffer, int drawbuffer, int[] value) { long __functionAddress = GL.getICD().glClearNamedFramebufferiv; if (CHECKS) { check(__functionAddress); check(value, 1); } callPV(__functionAddress, framebuffer, buffer, drawbuffer, value); } /** *

Reference Page

* * Array version of: {@link #glClearNamedFramebufferuiv ClearNamedFramebufferuiv} */ public static void glClearNamedFramebufferuiv(int framebuffer, int buffer, int drawbuffer, int[] value) { long __functionAddress = GL.getICD().glClearNamedFramebufferuiv; if (CHECKS) { check(__functionAddress); check(value, 4); } callPV(__functionAddress, framebuffer, buffer, drawbuffer, value); } /** *

Reference Page

* * Array version of: {@link #glClearNamedFramebufferfv ClearNamedFramebufferfv} */ public static void glClearNamedFramebufferfv(int framebuffer, int buffer, int drawbuffer, float[] value) { long __functionAddress = GL.getICD().glClearNamedFramebufferfv; if (CHECKS) { check(__functionAddress); check(value, 1); } callPV(__functionAddress, framebuffer, buffer, drawbuffer, value); } /** *

Reference Page

* * Array version of: {@link #glGetNamedFramebufferParameteriv GetNamedFramebufferParameteriv} */ public static void glGetNamedFramebufferParameteriv(int framebuffer, int pname, int[] params) { long __functionAddress = GL.getICD().glGetNamedFramebufferParameteriv; if (CHECKS) { check(__functionAddress); check(params, 1); } callPV(__functionAddress, framebuffer, pname, params); } /** *

Reference Page

* * Array version of: {@link #glGetNamedFramebufferAttachmentParameteriv GetNamedFramebufferAttachmentParameteriv} */ public static void glGetNamedFramebufferAttachmentParameteriv(int framebuffer, int attachment, int pname, int[] params) { long __functionAddress = GL.getICD().glGetNamedFramebufferAttachmentParameteriv; if (CHECKS) { check(__functionAddress); check(params, 1); } callPV(__functionAddress, framebuffer, attachment, pname, params); } /** *

Reference Page

* * Array version of: {@link #glCreateRenderbuffers CreateRenderbuffers} */ public static void glCreateRenderbuffers(int[] renderbuffers) { long __functionAddress = GL.getICD().glCreateRenderbuffers; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, renderbuffers.length, renderbuffers); } /** *

Reference Page

* * Array version of: {@link #glGetNamedRenderbufferParameteriv GetNamedRenderbufferParameteriv} */ public static void glGetNamedRenderbufferParameteriv(int renderbuffer, int pname, int[] params) { long __functionAddress = GL.getICD().glGetNamedRenderbufferParameteriv; if (CHECKS) { check(__functionAddress); check(params, 1); } callPV(__functionAddress, renderbuffer, pname, params); } /** *

Reference Page

* * Array version of: {@link #glCreateTextures CreateTextures} */ public static void glCreateTextures(int target, int[] textures) { long __functionAddress = GL.getICD().glCreateTextures; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, target, textures.length, textures); } /** *

Reference Page

* * Array version of: {@link #glTextureSubImage1D TextureSubImage1D} */ public static void glTextureSubImage1D(int texture, int level, int xoffset, int width, int format, int type, short[] pixels) { long __functionAddress = GL.getICD().glTextureSubImage1D; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, width, format, type, pixels); } /** *

Reference Page

* * Array version of: {@link #glTextureSubImage1D TextureSubImage1D} */ public static void glTextureSubImage1D(int texture, int level, int xoffset, int width, int format, int type, int[] pixels) { long __functionAddress = GL.getICD().glTextureSubImage1D; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, width, format, type, pixels); } /** *

Reference Page

* * Array version of: {@link #glTextureSubImage1D TextureSubImage1D} */ public static void glTextureSubImage1D(int texture, int level, int xoffset, int width, int format, int type, float[] pixels) { long __functionAddress = GL.getICD().glTextureSubImage1D; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, width, format, type, pixels); } /** *

Reference Page

* * Array version of: {@link #glTextureSubImage1D TextureSubImage1D} */ public static void glTextureSubImage1D(int texture, int level, int xoffset, int width, int format, int type, double[] pixels) { long __functionAddress = GL.getICD().glTextureSubImage1D; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, width, format, type, pixels); } /** *

Reference Page

* * Array version of: {@link #glTextureSubImage2D TextureSubImage2D} */ public static void glTextureSubImage2D(int texture, int level, int xoffset, int yoffset, int width, int height, int format, int type, short[] pixels) { long __functionAddress = GL.getICD().glTextureSubImage2D; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, width, height, format, type, pixels); } /** *

Reference Page

* * Array version of: {@link #glTextureSubImage2D TextureSubImage2D} */ public static void glTextureSubImage2D(int texture, int level, int xoffset, int yoffset, int width, int height, int format, int type, int[] pixels) { long __functionAddress = GL.getICD().glTextureSubImage2D; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, width, height, format, type, pixels); } /** *

Reference Page

* * Array version of: {@link #glTextureSubImage2D TextureSubImage2D} */ public static void glTextureSubImage2D(int texture, int level, int xoffset, int yoffset, int width, int height, int format, int type, float[] pixels) { long __functionAddress = GL.getICD().glTextureSubImage2D; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, width, height, format, type, pixels); } /** *

Reference Page

* * Array version of: {@link #glTextureSubImage2D TextureSubImage2D} */ public static void glTextureSubImage2D(int texture, int level, int xoffset, int yoffset, int width, int height, int format, int type, double[] pixels) { long __functionAddress = GL.getICD().glTextureSubImage2D; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, width, height, format, type, pixels); } /** *

Reference Page

* * Array version of: {@link #glTextureSubImage3D TextureSubImage3D} */ public static void glTextureSubImage3D(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, short[] pixels) { long __functionAddress = GL.getICD().glTextureSubImage3D; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels); } /** *

Reference Page

* * Array version of: {@link #glTextureSubImage3D TextureSubImage3D} */ public static void glTextureSubImage3D(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, int[] pixels) { long __functionAddress = GL.getICD().glTextureSubImage3D; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels); } /** *

Reference Page

* * Array version of: {@link #glTextureSubImage3D TextureSubImage3D} */ public static void glTextureSubImage3D(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, float[] pixels) { long __functionAddress = GL.getICD().glTextureSubImage3D; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels); } /** *

Reference Page

* * Array version of: {@link #glTextureSubImage3D TextureSubImage3D} */ public static void glTextureSubImage3D(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, double[] pixels) { long __functionAddress = GL.getICD().glTextureSubImage3D; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels); } /** *

Reference Page

* * Array version of: {@link #glTextureParameterfv TextureParameterfv} */ public static void glTextureParameterfv(int texture, int pname, float[] params) { long __functionAddress = GL.getICD().glTextureParameterfv; if (CHECKS) { check(__functionAddress); check(params, 4); } callPV(__functionAddress, texture, pname, params); } /** *

Reference Page

* * Array version of: {@link #glTextureParameterIiv TextureParameterIiv} */ public static void glTextureParameterIiv(int texture, int pname, int[] params) { long __functionAddress = GL.getICD().glTextureParameterIiv; if (CHECKS) { check(__functionAddress); check(params, 1); } callPV(__functionAddress, texture, pname, params); } /** *

Reference Page

* * Array version of: {@link #glTextureParameterIuiv TextureParameterIuiv} */ public static void glTextureParameterIuiv(int texture, int pname, int[] params) { long __functionAddress = GL.getICD().glTextureParameterIuiv; if (CHECKS) { check(__functionAddress); check(params, 1); } callPV(__functionAddress, texture, pname, params); } /** *

Reference Page

* * Array version of: {@link #glTextureParameteriv TextureParameteriv} */ public static void glTextureParameteriv(int texture, int pname, int[] params) { long __functionAddress = GL.getICD().glTextureParameteriv; if (CHECKS) { check(__functionAddress); check(params, 4); } callPV(__functionAddress, texture, pname, params); } /** *

Reference Page

* * Array version of: {@link #glGetTextureImage GetTextureImage} */ public static void glGetTextureImage(int texture, int level, int format, int type, short[] pixels) { long __functionAddress = GL.getICD().glGetTextureImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, format, type, pixels.length << 1, pixels); } /** *

Reference Page

* * Array version of: {@link #glGetTextureImage GetTextureImage} */ public static void glGetTextureImage(int texture, int level, int format, int type, int[] pixels) { long __functionAddress = GL.getICD().glGetTextureImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, format, type, pixels.length << 2, pixels); } /** *

Reference Page

* * Array version of: {@link #glGetTextureImage GetTextureImage} */ public static void glGetTextureImage(int texture, int level, int format, int type, float[] pixels) { long __functionAddress = GL.getICD().glGetTextureImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, format, type, pixels.length << 2, pixels); } /** *

Reference Page

* * Array version of: {@link #glGetTextureImage GetTextureImage} */ public static void glGetTextureImage(int texture, int level, int format, int type, double[] pixels) { long __functionAddress = GL.getICD().glGetTextureImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, format, type, pixels.length << 3, pixels); } /** *

Reference Page

* * Array version of: {@link #glGetTextureLevelParameterfv GetTextureLevelParameterfv} */ public static void glGetTextureLevelParameterfv(int texture, int level, int pname, float[] params) { long __functionAddress = GL.getICD().glGetTextureLevelParameterfv; if (CHECKS) { check(__functionAddress); check(params, 1); } callPV(__functionAddress, texture, level, pname, params); } /** *

Reference Page

* * Array version of: {@link #glGetTextureLevelParameteriv GetTextureLevelParameteriv} */ public static void glGetTextureLevelParameteriv(int texture, int level, int pname, int[] params) { long __functionAddress = GL.getICD().glGetTextureLevelParameteriv; if (CHECKS) { check(__functionAddress); check(params, 1); } callPV(__functionAddress, texture, level, pname, params); } /** *

Reference Page

* * Array version of: {@link #glGetTextureParameterfv GetTextureParameterfv} */ public static void glGetTextureParameterfv(int texture, int pname, float[] params) { long __functionAddress = GL.getICD().glGetTextureParameterfv; if (CHECKS) { check(__functionAddress); check(params, 1); } callPV(__functionAddress, texture, pname, params); } /** *

Reference Page

* * Array version of: {@link #glGetTextureParameterIiv GetTextureParameterIiv} */ public static void glGetTextureParameterIiv(int texture, int pname, int[] params) { long __functionAddress = GL.getICD().glGetTextureParameterIiv; if (CHECKS) { check(__functionAddress); check(params, 1); } callPV(__functionAddress, texture, pname, params); } /** *

Reference Page

* * Array version of: {@link #glGetTextureParameterIuiv GetTextureParameterIuiv} */ public static void glGetTextureParameterIuiv(int texture, int pname, int[] params) { long __functionAddress = GL.getICD().glGetTextureParameterIuiv; if (CHECKS) { check(__functionAddress); check(params, 1); } callPV(__functionAddress, texture, pname, params); } /** *

Reference Page

* * Array version of: {@link #glGetTextureParameteriv GetTextureParameteriv} */ public static void glGetTextureParameteriv(int texture, int pname, int[] params) { long __functionAddress = GL.getICD().glGetTextureParameteriv; if (CHECKS) { check(__functionAddress); check(params, 1); } callPV(__functionAddress, texture, pname, params); } /** *

Reference Page

* * Array version of: {@link #glCreateVertexArrays CreateVertexArrays} */ public static void glCreateVertexArrays(int[] arrays) { long __functionAddress = GL.getICD().glCreateVertexArrays; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, arrays.length, arrays); } /** *

Reference Page

* * Array version of: {@link #glVertexArrayVertexBuffers VertexArrayVertexBuffers} */ public static void glVertexArrayVertexBuffers(int vaobj, int first, int[] buffers, PointerBuffer offsets, int[] strides) { long __functionAddress = GL.getICD().glVertexArrayVertexBuffers; if (CHECKS) { check(__functionAddress); checkSafe(offsets, lengthSafe(buffers)); checkSafe(strides, lengthSafe(buffers)); } callPPPV(__functionAddress, vaobj, first, lengthSafe(buffers), buffers, memAddressSafe(offsets), strides); } /** *

Reference Page

* * Array version of: {@link #glGetVertexArrayiv GetVertexArrayiv} */ public static void glGetVertexArrayiv(int vaobj, int pname, int[] param) { long __functionAddress = GL.getICD().glGetVertexArrayiv; if (CHECKS) { check(__functionAddress); check(param, 1); } callPV(__functionAddress, vaobj, pname, param); } /** *

Reference Page

* * Array version of: {@link #glGetVertexArrayIndexediv GetVertexArrayIndexediv} */ public static void glGetVertexArrayIndexediv(int vaobj, int index, int pname, int[] param) { long __functionAddress = GL.getICD().glGetVertexArrayIndexediv; if (CHECKS) { check(__functionAddress); check(param, 1); } callPV(__functionAddress, vaobj, index, pname, param); } /** *

Reference Page

* * Array version of: {@link #glGetVertexArrayIndexed64iv GetVertexArrayIndexed64iv} */ public static void glGetVertexArrayIndexed64iv(int vaobj, int index, int pname, long[] param) { long __functionAddress = GL.getICD().glGetVertexArrayIndexed64iv; if (CHECKS) { check(__functionAddress); check(param, 1); } callPV(__functionAddress, vaobj, index, pname, param); } /** *

Reference Page

* * Array version of: {@link #glCreateSamplers CreateSamplers} */ public static void glCreateSamplers(int[] samplers) { long __functionAddress = GL.getICD().glCreateSamplers; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, samplers.length, samplers); } /** *

Reference Page

* * Array version of: {@link #glCreateProgramPipelines CreateProgramPipelines} */ public static void glCreateProgramPipelines(int[] pipelines) { long __functionAddress = GL.getICD().glCreateProgramPipelines; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, pipelines.length, pipelines); } /** *

Reference Page

* * Array version of: {@link #glCreateQueries CreateQueries} */ public static void glCreateQueries(int target, int[] ids) { long __functionAddress = GL.getICD().glCreateQueries; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, target, ids.length, ids); } /** *

Reference Page

* * Array version of: {@link #glGetTextureSubImage GetTextureSubImage} */ public static void glGetTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, short[] pixels) { long __functionAddress = GL.getICD().glGetTextureSubImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels.length << 1, pixels); } /** *

Reference Page

* * Array version of: {@link #glGetTextureSubImage GetTextureSubImage} */ public static void glGetTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, int[] pixels) { long __functionAddress = GL.getICD().glGetTextureSubImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels.length << 2, pixels); } /** *

Reference Page

* * Array version of: {@link #glGetTextureSubImage GetTextureSubImage} */ public static void glGetTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, float[] pixels) { long __functionAddress = GL.getICD().glGetTextureSubImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels.length << 2, pixels); } /** *

Reference Page

* * Array version of: {@link #glGetTextureSubImage GetTextureSubImage} */ public static void glGetTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, double[] pixels) { long __functionAddress = GL.getICD().glGetTextureSubImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels.length << 3, pixels); } /** *

Reference Page

* * Array version of: {@link #glGetCompressedTextureSubImage GetCompressedTextureSubImage} */ public static void glGetCompressedTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, short[] pixels) { long __functionAddress = GL.getICD().glGetCompressedTextureSubImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, zoffset, width, height, depth, pixels.length << 1, pixels); } /** *

Reference Page

* * Array version of: {@link #glGetCompressedTextureSubImage GetCompressedTextureSubImage} */ public static void glGetCompressedTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int[] pixels) { long __functionAddress = GL.getICD().glGetCompressedTextureSubImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, zoffset, width, height, depth, pixels.length << 2, pixels); } /** *

Reference Page

* * Array version of: {@link #glGetCompressedTextureSubImage GetCompressedTextureSubImage} */ public static void glGetCompressedTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, float[] pixels) { long __functionAddress = GL.getICD().glGetCompressedTextureSubImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, zoffset, width, height, depth, pixels.length << 2, pixels); } /** *

Reference Page

* * Array version of: {@link #glGetCompressedTextureSubImage GetCompressedTextureSubImage} */ public static void glGetCompressedTextureSubImage(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, double[] pixels) { long __functionAddress = GL.getICD().glGetCompressedTextureSubImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, texture, level, xoffset, yoffset, zoffset, width, height, depth, pixels.length << 3, pixels); } /** *

Reference Page

* * Array version of: {@link #glGetnMapdv GetnMapdv} */ public static void glGetnMapdv(int target, int query, double[] data) { long __functionAddress = GL.getICD().glGetnMapdv; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, target, query, data.length, data); } /** *

Reference Page

* * Array version of: {@link #glGetnMapfv GetnMapfv} */ public static void glGetnMapfv(int target, int query, float[] data) { long __functionAddress = GL.getICD().glGetnMapfv; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, target, query, data.length, data); } /** *

Reference Page

* * Array version of: {@link #glGetnMapiv GetnMapiv} */ public static void glGetnMapiv(int target, int query, int[] data) { long __functionAddress = GL.getICD().glGetnMapiv; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, target, query, data.length, data); } /** *

Reference Page

* * Array version of: {@link #glGetnPixelMapfv GetnPixelMapfv} */ public static void glGetnPixelMapfv(int map, float[] data) { long __functionAddress = GL.getICD().glGetnPixelMapfv; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, map, data.length, data); } /** *

Reference Page

* * Array version of: {@link #glGetnPixelMapuiv GetnPixelMapuiv} */ public static void glGetnPixelMapuiv(int map, int[] data) { long __functionAddress = GL.getICD().glGetnPixelMapuiv; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, map, data.length, data); } /** *

Reference Page

* * Array version of: {@link #glGetnPixelMapusv GetnPixelMapusv} */ public static void glGetnPixelMapusv(int map, short[] data) { long __functionAddress = GL.getICD().glGetnPixelMapusv; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, map, data.length, data); } /** *

Reference Page

* * Array version of: {@link #glGetnTexImage GetnTexImage} */ public static void glGetnTexImage(int tex, int level, int format, int type, short[] img) { long __functionAddress = GL.getICD().glGetnTexImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, tex, level, format, type, img.length << 1, img); } /** *

Reference Page

* * Array version of: {@link #glGetnTexImage GetnTexImage} */ public static void glGetnTexImage(int tex, int level, int format, int type, int[] img) { long __functionAddress = GL.getICD().glGetnTexImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, tex, level, format, type, img.length << 2, img); } /** *

Reference Page

* * Array version of: {@link #glGetnTexImage GetnTexImage} */ public static void glGetnTexImage(int tex, int level, int format, int type, float[] img) { long __functionAddress = GL.getICD().glGetnTexImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, tex, level, format, type, img.length << 2, img); } /** *

Reference Page

* * Array version of: {@link #glGetnTexImage GetnTexImage} */ public static void glGetnTexImage(int tex, int level, int format, int type, double[] img) { long __functionAddress = GL.getICD().glGetnTexImage; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, tex, level, format, type, img.length << 3, img); } /** *

Reference Page

* * Array version of: {@link #glReadnPixels ReadnPixels} */ public static void glReadnPixels(int x, int y, int width, int height, int format, int type, short[] pixels) { long __functionAddress = GL.getICD().glReadnPixels; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, x, y, width, height, format, type, pixels.length << 1, pixels); } /** *

Reference Page

* * Array version of: {@link #glReadnPixels ReadnPixels} */ public static void glReadnPixels(int x, int y, int width, int height, int format, int type, int[] pixels) { long __functionAddress = GL.getICD().glReadnPixels; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, x, y, width, height, format, type, pixels.length << 2, pixels); } /** *

Reference Page

* * Array version of: {@link #glReadnPixels ReadnPixels} */ public static void glReadnPixels(int x, int y, int width, int height, int format, int type, float[] pixels) { long __functionAddress = GL.getICD().glReadnPixels; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, x, y, width, height, format, type, pixels.length << 2, pixels); } /** *

Reference Page

* * Array version of: {@link #glGetnColorTable GetnColorTable} */ public static void glGetnColorTable(int target, int format, int type, short[] table) { long __functionAddress = GL.getICD().glGetnColorTable; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, target, format, type, table.length << 1, table); } /** *

Reference Page

* * Array version of: {@link #glGetnColorTable GetnColorTable} */ public static void glGetnColorTable(int target, int format, int type, int[] table) { long __functionAddress = GL.getICD().glGetnColorTable; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, target, format, type, table.length << 2, table); } /** *

Reference Page

* * Array version of: {@link #glGetnColorTable GetnColorTable} */ public static void glGetnColorTable(int target, int format, int type, float[] table) { long __functionAddress = GL.getICD().glGetnColorTable; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, target, format, type, table.length << 2, table); } /** *

Reference Page

* * Array version of: {@link #glGetnUniformfv GetnUniformfv} */ public static void glGetnUniformfv(int program, int location, float[] params) { long __functionAddress = GL.getICD().glGetnUniformfv; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, program, location, params.length, params); } /** *

Reference Page

* * Array version of: {@link #glGetnUniformdv GetnUniformdv} */ public static void glGetnUniformdv(int program, int location, double[] params) { long __functionAddress = GL.getICD().glGetnUniformdv; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, program, location, params.length, params); } /** *

Reference Page

* * Array version of: {@link #glGetnUniformiv GetnUniformiv} */ public static void glGetnUniformiv(int program, int location, float[] params) { long __functionAddress = GL.getICD().glGetnUniformiv; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, program, location, params.length, params); } /** *

Reference Page

* * Array version of: {@link #glGetnUniformuiv GetnUniformuiv} */ public static void glGetnUniformuiv(int program, int location, float[] params) { long __functionAddress = GL.getICD().glGetnUniformuiv; if (CHECKS) { check(__functionAddress); } callPV(__functionAddress, program, location, params.length, params); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy