org.lwjgl.opengles.EXTShaderFramebufferFetchNonCoherent Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of lwjgl-opengles Show documentation
Show all versions of lwjgl-opengles Show documentation
A royalty-free, cross-platform API for full-function 2D and 3D graphics on embedded systems - including consoles, phones, appliances and vehicles.
/*
* 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_shader_framebuffer_fetch_non_coherent extension.
*
* See {@link EXTShaderFramebufferFetch EXT_shader_framebuffer_fetch}.
*/
public class EXTShaderFramebufferFetchNonCoherent {
static { GLES.initialize(); }
protected EXTShaderFramebufferFetchNonCoherent() {
throw new UnsupportedOperationException();
}
static boolean isAvailable(GLESCapabilities caps) {
return checkFunctions(
caps.glFramebufferFetchBarrierEXT
);
}
// --- [ glFramebufferFetchBarrierEXT ] ---
/**
* Specifies a boundary between passes when reading existing framebuffer data from fragment shaders via the {@code gl_LastFragData} built-in variable.
* Previous framebuffer object writes regardless of the mechanism (including clears, blits and primitive rendering) are guaranteed to be visible to
* subsequent fragment shader invocations that read from the framebuffer once {@code FramebufferFetchBarrierEXT} is executed.
*
* If {@code EXT_shader_framebuffer_fetch} is also supported: Because the implementation guarantees coherency of framebuffer reads and writes for color
* outputs not explicitly marked with the noncoherent layout qualifier, calling the {@code FramebufferFetchBarrierEXT} command is not required unless the
* application wishes to manage memory ordering of framebuffer reads and writes explicitly, which may provide better performance on some implementations
* in cases where rendering can be split into multiple passes with non-self-overlapping geometry.
*/
public static native void glFramebufferFetchBarrierEXT();
}