org.lwjgl.opengles.EXTCopyImage Maven / Gradle / Ivy
Show all versions of lwjgl-opengles Show documentation
/*
* Copyright LWJGL. All rights reserved.
* License terms: https://www.lwjgl.org/license
* MACHINE GENERATED FILE, DO NOT EDIT
*/
package org.lwjgl.opengles;
import org.lwjgl.system.*;
import static org.lwjgl.system.Checks.*;
/**
* Native bindings to the EXT_copy_image extension.
*
* This extension enables efficient image data transfer between image objects (i.e. textures and renderbuffers) without the need to bind the objects or
* otherwise configure the rendering pipeline.
*
* This is accomplised by adding a new entry-point CopyImageSubData, which takes a named source and destination.
*
* CopyImageSubData does not perform general-purpose conversions such as scaling, resizing, blending, color-space, or format conversions. It should be
* considered to operate in a manner similar to a CPU memcpy, but using the GPU for the copy.
*
* CopyImageSubData supports copies between images with different internal formats, if the formats are compatible as described in this extension.
*
* CopyImageSubData also supports copying between compressed and uncompressed images if the compressed block / uncompressed texel sizes are the same.
*
* Requires {@link GLES30 GLES 3.0}.
*/
public class EXTCopyImage {
static { GLES.initialize(); }
protected EXTCopyImage() {
throw new UnsupportedOperationException();
}
static boolean isAvailable(GLESCapabilities caps) {
return checkFunctions(
caps.glCopyImageSubDataEXT
);
}
// --- [ glCopyImageSubDataEXT ] ---
public static native void glCopyImageSubDataEXT(@NativeType("GLuint") int srcName, @NativeType("GLenum") int srcTarget, @NativeType("GLint") int srcLevel, @NativeType("GLint") int srcX, @NativeType("GLint") int srcY, @NativeType("GLint") int srcZ, @NativeType("GLuint") int dstName, @NativeType("GLenum") int dstTarget, @NativeType("GLint") int dstLevel, @NativeType("GLint") int dstX, @NativeType("GLint") int dstY, @NativeType("GLint") int dstZ, @NativeType("GLsizei") int srcWidth, @NativeType("GLsizei") int srcHeight, @NativeType("GLsizei") int srcDepth);
}