Package com.jogamp.opengl.util.glsl
Class ShaderUtil
java.lang.Object
com.jogamp.opengl.util.glsl.ShaderUtil
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic void
attachShader
(GL _gl, int program, IntBuffer shaders) static void
compileShader
(GL _gl, IntBuffer shaders) static boolean
createAndCompileShader
(GL _gl, IntBuffer shader, int shaderType, CharSequence[][] sources, PrintStream verboseOut) static boolean
createAndLoadShader
(GL _gl, IntBuffer shader, int shaderType, int binFormat, Buffer bin, PrintStream verboseOut) static void
createShader
(GL _gl, int type, IntBuffer shaders) static void
deleteShader
(GL _gl, IntBuffer shaders) static void
detachShader
(GL _gl, int program, IntBuffer shaders) static String
getProgramInfoLog
(GL _gl, int programObj) getShaderBinaryFormats
(GL _gl) If supported, queries the natively supported shader binary formats usingGL2ES2.GL_NUM_SHADER_BINARY_FORMATS
andGL2ES2.GL_SHADER_BINARY_FORMATS
viaGL.glGetIntegerv(int, int[], int)
.static String
getShaderInfoLog
(GL _gl, int shaderObj) static boolean
Returns true if GeometryShader is supported, i.e.static boolean
isProgramExecStatusValid
(GL _gl, int programObj, PrintStream verboseOut) PerformsGL2ES2.glValidateProgram(int)
static boolean
isProgramLinkStatusValid
(GL _gl, int programObj, PrintStream verboseOut) static boolean
isProgramStatusValid
(GL _gl, int programObj, int name) static boolean
Returns true if a hader compiler is available, otherwise false.static boolean
isShaderStatusValid
(GL _gl, int shaderObj, int name, PrintStream verboseOut) static boolean
isShaderStatusValid
(GL _gl, IntBuffer shaders, int name, PrintStream verboseOut) static void
shaderBinary
(GL _gl, IntBuffer shaders, int binFormat, Buffer bin) static void
shaderSource
(GL _gl, int shader, CharSequence[] source) static void
shaderSource
(GL _gl, IntBuffer shaders, CharSequence[][] sources)
-
Constructor Details
-
ShaderUtil
public ShaderUtil()
-
-
Method Details
-
getShaderInfoLog
-
getProgramInfoLog
-
isShaderStatusValid
-
isShaderStatusValid
public static boolean isShaderStatusValid(GL _gl, IntBuffer shaders, int name, PrintStream verboseOut) -
isProgramStatusValid
-
isProgramLinkStatusValid
-
isProgramExecStatusValid
PerformsGL2ES2.glValidateProgram(int)
One shall only call this method while debugging and only if all required resources by the shader are set.
Note: It is possible that a working shader program will fail validation. This has been experienced on NVidia APX2500 and Tegra2.
- See Also:
-
createShader
-
getShaderBinaryFormats
If supported, queries the natively supported shader binary formats usingGL2ES2.GL_NUM_SHADER_BINARY_FORMATS
andGL2ES2.GL_SHADER_BINARY_FORMATS
viaGL.glGetIntegerv(int, int[], int)
. -
isShaderCompilerAvailable
Returns true if a hader compiler is available, otherwise false. -
isGeometryShaderSupported
Returns true if GeometryShader is supported, i.e. whether GLContext is ≥ 3.2 or ARB_geometry_shader4 extension is available. -
shaderSource
-
shaderSource
-
shaderBinary
-
compileShader
-
attachShader
-
detachShader
-
deleteShader
-
createAndLoadShader
public static boolean createAndLoadShader(GL _gl, IntBuffer shader, int shaderType, int binFormat, Buffer bin, PrintStream verboseOut) -
createAndCompileShader
public static boolean createAndCompileShader(GL _gl, IntBuffer shader, int shaderType, CharSequence[][] sources, PrintStream verboseOut)
-