Top Description Fields Constructors Methods
jogamp.opengl.util.glsl.fixedfunc

public Class FixedFuncPipeline

extends Object
Class Inheritance
Imports
java.nio.ByteBuffer, .FloatBuffer, .IntBuffer, .ShortBuffer, com.jogamp.opengl.GL, .GL2, .GL2ES1, .GL2ES2, .GL2GL3, .GLArrayData, .GLES2, .GLException, .GLRunnable2, .GLUniformData, com.jogamp.opengl.fixedfunc.GLLightingFunc, .GLPointerFunc, .GLPointerFuncUtil, jogamp.opengl.Debug, com.jogamp.common.nio.Buffers, com.jogamp.common.util.IntIntHashMap, .PropertyAccess, com.jogamp.opengl.util.PMVMatrix, com.jogamp.opengl.util.glsl.ShaderCode, .ShaderProgram, .ShaderState, com.jogamp.opengl.util.glsl.fixedfunc.ShaderSelectionMode

Note

Certain GL FFP state values (e.g.: alphaTestFunc and cullFace) are mapped to a lower number range so they can be stored in low precision storage, i.e. in a 'lowp int' (GL ES2).

Field Summary

Modifier and TypeField and Description
private int
private boolean
private int
private float
private final int[]
private int
private final FloatBuffer
private boolean
colorVAEnabledDirty

ES2 supports CullFace implicit private int cullFace=-2; // <=0 disabled, 1 GL_FRONT, 2 GL_BACK (default) and 3 GL_FRONT_AND_BACK private boolean cullFaceDirty = false; private static final String mgl_CullFace = "mgl_CullFace"; // 1i (lowp int)

private static final String
private static final String
private static final String
private static final String
private ShaderSelectionMode
protected static final boolean
public static final FloatBuffer
public static final float
public static final FloatBuffer
public static final FloatBuffer
public static final float
public static final FloatBuffer
public static final FloatBuffer
public static final FloatBuffer
public static final float
public static final FloatBuffer
public static final FloatBuffer
public static final float
public static final FloatBuffer
public static final float
public static final FloatBuffer
public static final float
private final String
private static final String
private final String
private static final String
private static final GLRunnable2<Object, Object>
private boolean
private final IntBuffer
private boolean
public static final int
public static final int
MAX_TEXTURE_UNITS

The maximum texture units which could be used, depending on ShaderSelectionMode.

private static final String
private static final String
private static final String
private static final String
private static final String
private static final String
private static final String
private static final String
private static final String
private static final String
private static final String
private static final String
private static final String
private static final String
private static final String
private static final String
private static final FloatBuffer
private static final FloatBuffer
private PMVMatrix
private final FloatBuffer
pointParams

( pointSize, pointSmooth, attn.

private boolean
private ShaderSelectionMode
private final String
private static final String
private static final String
private ShaderProgram
private ShaderProgram
private ShaderProgram
private ShaderProgram
private ShaderProgram
private ShaderProgram
private ShaderProgram
private final Class<?>
private final String
private static final String
private ShaderState
private final IntIntHashMap
private final IntBuffer
private boolean
private final IntBuffer
private int
private boolean
private final IntBuffer
private boolean
private final IntBuffer
private boolean
protected boolean
private final String
private static final String
private final String
private static final String

Constructor Summary

AccessConstructor and Description
public
FixedFuncPipeline(final GL2ES2 gl, final ShaderSelectionMode mode, final PMVMatrix pmvMatrix)

public
FixedFuncPipeline(final GL2ES2 gl, final ShaderSelectionMode mode, final PMVMatrix pmvMatrix, final Class<?> shaderRootClass, final String shaderSrcRoot, final String shaderBinRoot, final String vertexColorFile, final String vertexColorLightFile, final String fragmentColorFile, final String fragmentColorTextureFile)

Method Summary

Modifier and TypeMethod and Description
private final void
customizeShader(final GL2ES2 gl, final ShaderCode vp, final ShaderCode fp, final String maxTextureDefine)

public void
destroy(final GL2ES2 gl)

public int
public ShaderSelectionMode
public ShaderSelectionMode
public ShaderState
public void
glActiveTexture(int textureUnit)

public void
glAlphaFunc(final int func, final float ref)

ES2 supports CullFace implicit public void glCullFace(int faceName) { int _cullFace; switch(faceName) { case GL.GL_FRONT: _cullFace = 1; break; case GL.GL_BACK: _cullFace = 2; break; case GL.GL_FRONT_AND_BACK: _cullFace = 3; break; default: throw new GLException("glCullFace invalid faceName: "+toHexString(faceName)); } if(0 < _cullFace) { if(0>cullFace) { _cullFace *= -1; } if(cullFace != _cullFace) { cullFace = _cullFace; cullFaceDirty=true; } } }

public void
glBindTexture(final int target, final int texture)

public void
glClientActiveTexture(int textureUnit)

public void
glColor4f(final GL2ES2 gl, final float red, final float green, final float blue, final float alpha)

public void
glColorPointer(final GL2ES2 gl, final GLArrayData data)

public void
glDisableClientState(final GL2ES2 gl, final int glArrayIndex)

public void
glDrawArrays(final GL2ES2 gl, int mode, final int first, final int count)

public void
glDrawElements(final GL2ES2 gl, final int mode, final int count, final int type, final Buffer indices)

public void
glDrawElements(final GL2ES2 gl, final int mode, final int count, final int type, final long indices_buffer_offset)

private final void
glDrawPointArrays(final GL2ES2 gl, final int first, final int count)

private void
glDrawPoints(final GL2ES2 gl, final GLRunnable2<Object, Object> glDrawAction, final Object args)

public boolean

Returns:

false if digested in regard to GL2ES2 spec, eg this call must not be passed to an underlying ES2 implementation. true if this call shall be passed to an underlying GL2ES2/ES2 implementation as well.
glEnable
(final int cap, final boolean enable)

public void
glEnableClientState(final GL2ES2 gl, final int glArrayIndex)

private boolean
glEnableTexture(final boolean enable, final int unit)

Enables/Disables the named texture unit (if changed), returns previous state

public void
glGetTexEnviv(final int target, final int pname, final IntBuffer params)

public void
glGetTexEnviv(final int target, final int pname, final int[] params, final int params_offset)

public void
glLightfv(final GL2ES2 gl, int light, final int pname, final FloatBuffer params)

public void
glMaterialfv(final GL2ES2 gl, final int face, final int pname, final FloatBuffer params)

public void
glNormalPointer(final GL2ES2 gl, final GLArrayData data)

public void
glPointParameterf(final int pname, final float param)

public void
glPointParameterfv(final int pname, final float[] params, final int params_offset)

public void
glPointParameterfv(final int pname, final FloatBuffer params)

public void
glPointSize(final float size)

public void
glShadeModel(final GL2ES2 gl, final int mode)

public void
glTexCoordPointer(final GL2ES2 gl, final GLArrayData data)

public void
glTexEnvi(final int target, final int pname, final int value)

public void
glTexImage2D(final int target, final int internalformat, final int format)

private void
glToggleClientState(final GL2ES2 gl, final int glArrayIndex, final boolean enable)

public void
glVertexPointer(final GL2ES2 gl, final GLArrayData data)

private void
init(final GL2ES2 gl, final ShaderSelectionMode mode, final PMVMatrix pmvMatrix)

public boolean
private final void
loadShader(final GL2ES2 gl, final ShaderSelectionMode mode)

private final void
private ShaderProgram
public void
private void
setTextureEnvMode(final int value)

public void
setVerbose(final boolean v)

private final int
private String
toHexString(final int i)

public StringBuilder
toString(StringBuilder sb, final boolean alsoUnlocated)

public String
toString()

Overrides java.lang.Object.toString.

Returns a string representation of the object.
public void
validate(final GL2ES2 gl, final boolean selectShader)

public boolean
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAllwaitwaitwait

Field Detail

activeTextureUnitback to summary
private int activeTextureUnit
alphaTestDirtyback to summary
private boolean alphaTestDirty
alphaTestFuncback to summary
private int alphaTestFunc
alphaTestRefback to summary
private float alphaTestRef
boundTextureObjectback to summary
private final int[] boundTextureObject
clientActiveTextureUnitback to summary
private int clientActiveTextureUnit
colorStaticback to summary
private final FloatBuffer colorStatic
colorVAEnabledDirtyback to summary
private boolean colorVAEnabledDirty

ES2 supports CullFace implicit private int cullFace=-2; // <=0 disabled, 1 GL_FRONT, 2 GL_BACK (default) and 3 GL_FRONT_AND_BACK private boolean cullFaceDirty = false; private static final String mgl_CullFace = "mgl_CullFace"; // 1i (lowp int)

constMaxTextures0back to summary
private static final String constMaxTextures0
constMaxTextures2back to summary
private static final String constMaxTextures2
constMaxTextures4back to summary
private static final String constMaxTextures4
constMaxTextures8back to summary
private static final String constMaxTextures8
currentShaderSelectionModeback to summary
private ShaderSelectionMode currentShaderSelectionMode
DEBUGback to summary
protected static final boolean DEBUG
defAmbientback to summary
public static final FloatBuffer defAmbient
defConstantAttenback to summary
public static final float defConstantAtten
defDiffuseNback to summary
public static final FloatBuffer defDiffuseN
defLightModelAmbientback to summary
public static final FloatBuffer defLightModelAmbient
defLinearAttenback to summary
public static final float defLinearAtten
defMatAmbientback to summary
public static final FloatBuffer defMatAmbient
defMatDiffuseback to summary
public static final FloatBuffer defMatDiffuse
defMatEmissionback to summary
public static final FloatBuffer defMatEmission
defMatShininessback to summary
public static final float defMatShininess
defMatSpecularback to summary
public static final FloatBuffer defMatSpecular
defPositionback to summary
public static final FloatBuffer defPosition
defQuadraticAttenback to summary
public static final float defQuadraticAtten
defSpecularNback to summary
public static final FloatBuffer defSpecularN
defSpotCutoffback to summary
public static final float defSpotCutoff
defSpotDirback to summary
public static final FloatBuffer defSpotDir
defSpotExponentback to summary
public static final float defSpotExponent
fragmentColorFileback to summary
private final String fragmentColorFile
fragmentColorFileDefback to summary
private static final String fragmentColorFileDef
fragmentColorTextureFileback to summary
private final String fragmentColorTextureFile
fragmentColorTextureFileDefback to summary
private static final String fragmentColorTextureFileDef
glDrawArraysActionback to summary
private static final GLRunnable2<Object, Object> glDrawArraysAction
lightingEnabledback to summary
private boolean lightingEnabled
lightsEnabledback to summary
private final IntBuffer lightsEnabled
lightsEnabledDirtyback to summary
private boolean lightsEnabledDirty
MAX_LIGHTSback to summary
public static final int MAX_LIGHTS
MAX_TEXTURE_UNITSback to summary
public static final int MAX_TEXTURE_UNITS

The maximum texture units which could be used, depending on ShaderSelectionMode.

mgl_AlphaTestFuncback to summary
private static final String mgl_AlphaTestFunc
mgl_AlphaTestRefback to summary
private static final String mgl_AlphaTestRef
mgl_ColorEnabledback to summary
private static final String mgl_ColorEnabled
mgl_ColorStaticback to summary
private static final String mgl_ColorStatic
mgl_FrontMaterialback to summary
private static final String mgl_FrontMaterial
mgl_LightModelback to summary
private static final String mgl_LightModel
mgl_LightsEnabledback to summary
private static final String mgl_LightsEnabled
mgl_LightSourceback to summary
private static final String mgl_LightSource
mgl_PMVMatrixback to summary
private static final String mgl_PMVMatrix
mgl_PointParamsback to summary
private static final String mgl_PointParams
mgl_ShadeModelback to summary
private static final String mgl_ShadeModel
mgl_TexCoordEnabledback to summary
private static final String mgl_TexCoordEnabled
mgl_TexEnvModeback to summary
private static final String mgl_TexEnvMode
mgl_TexFormatback to summary
private static final String mgl_TexFormat
mgl_Textureback to summary
private static final String mgl_Texture
mgl_TextureEnabledback to summary
private static final String mgl_TextureEnabled
neut4fback to summary
private static final FloatBuffer neut4f
one4fback to summary
private static final FloatBuffer one4f
pmvMatrixback to summary
private PMVMatrix pmvMatrix
pointParamsback to summary
private final FloatBuffer pointParams

( pointSize, pointSmooth, attn. pointMinSize, attn. pointMaxSize ) , ( attenuation coefficients 1f 0f 0f, attenuation fade theshold 1f )

pointParamsDirtyback to summary
private boolean pointParamsDirty
requestedShaderSelectionModeback to summary
private ShaderSelectionMode requestedShaderSelectionMode
shaderBinRootback to summary
private final String shaderBinRoot
shaderBinRootDefback to summary
private static final String shaderBinRootDef
shaderPointFileDefback to summary
private static final String shaderPointFileDef
shaderProgramColorback to summary
private ShaderProgram shaderProgramColor
shaderProgramColorLightback to summary
private ShaderProgram shaderProgramColorLight
shaderProgramColorTexture2back to summary
private ShaderProgram shaderProgramColorTexture2
shaderProgramColorTexture4back to summary
private ShaderProgram shaderProgramColorTexture4
shaderProgramColorTexture8back to summary
private ShaderProgram shaderProgramColorTexture8
shaderProgramColorTexture8Lightback to summary
private ShaderProgram shaderProgramColorTexture8Light
shaderProgramPointsback to summary
private ShaderProgram shaderProgramPoints
shaderRootClassback to summary
private final Class<?> shaderRootClass
shaderSrcRootback to summary
private final String shaderSrcRoot
shaderSrcRootDefback to summary
private static final String shaderSrcRootDef
shaderStateback to summary
private ShaderState shaderState
texID2Formatback to summary
private final IntIntHashMap texID2Format
textureCoordEnabledback to summary
private final IntBuffer textureCoordEnabled
textureCoordEnabledDirtyback to summary
private boolean textureCoordEnabledDirty
textureEnabledback to summary
private final IntBuffer textureEnabled
textureEnabledBitsback to summary
private int textureEnabledBits
textureEnabledDirtyback to summary
private boolean textureEnabledDirty
textureEnvModeback to summary
private final IntBuffer textureEnvMode
textureEnvModeDirtyback to summary
private boolean textureEnvModeDirty
textureFormatback to summary
private final IntBuffer textureFormat
textureFormatDirtyback to summary
private boolean textureFormatDirty
verboseback to summary
protected boolean verbose
vertexColorFileback to summary
private final String vertexColorFile
vertexColorFileDefback to summary
private static final String vertexColorFileDef
vertexColorLightFileback to summary
private final String vertexColorLightFile
vertexColorLightFileDefback to summary
private static final String vertexColorLightFileDef

Constructor Detail

FixedFuncPipelineback to summary
public FixedFuncPipeline(final GL2ES2 gl, final ShaderSelectionMode mode, final PMVMatrix pmvMatrix)
FixedFuncPipelineback to summary
public FixedFuncPipeline(final GL2ES2 gl, final ShaderSelectionMode mode, final PMVMatrix pmvMatrix, final Class<?> shaderRootClass, final String shaderSrcRoot, final String shaderBinRoot, final String vertexColorFile, final String vertexColorLightFile, final String fragmentColorFile, final String fragmentColorTextureFile)

Method Detail

customizeShaderback to summary
private final void customizeShader(final GL2ES2 gl, final ShaderCode vp, final ShaderCode fp, final String maxTextureDefine)
destroyback to summary
public void destroy(final GL2ES2 gl)
getActiveTextureUnitback to summary
public int getActiveTextureUnit()
getCurrentShaderSelectionModeback to summary
public ShaderSelectionMode getCurrentShaderSelectionMode()
getShaderSelectionModeback to summary
public ShaderSelectionMode getShaderSelectionMode()
getShaderStateback to summary
public ShaderState getShaderState()
glActiveTextureback to summary
public void glActiveTexture(int textureUnit)
glAlphaFuncback to summary
public void glAlphaFunc(final int func, final float ref)

ES2 supports CullFace implicit public void glCullFace(int faceName) { int _cullFace; switch(faceName) { case GL.GL_FRONT: _cullFace = 1; break; case GL.GL_BACK: _cullFace = 2; break; case GL.GL_FRONT_AND_BACK: _cullFace = 3; break; default: throw new GLException("glCullFace invalid faceName: "+toHexString(faceName)); } if(0 < _cullFace) { if(0>cullFace) { _cullFace *= -1; } if(cullFace != _cullFace) { cullFace = _cullFace; cullFaceDirty=true; } } }

glBindTextureback to summary
public void glBindTexture(final int target, final int texture)
glClientActiveTextureback to summary
public void glClientActiveTexture(int textureUnit)
glColor4fback to summary
public void glColor4f(final GL2ES2 gl, final float red, final float green, final float blue, final float alpha)
glColorPointerback to summary
public void glColorPointer(final GL2ES2 gl, final GLArrayData data)
glDisableClientStateback to summary
public void glDisableClientState(final GL2ES2 gl, final int glArrayIndex)
glDrawArraysback to summary
public void glDrawArrays(final GL2ES2 gl, int mode, final int first, final int count)
glDrawElementsback to summary
public void glDrawElements(final GL2ES2 gl, final int mode, final int count, final int type, final Buffer indices)
glDrawElementsback to summary
public void glDrawElements(final GL2ES2 gl, final int mode, final int count, final int type, final long indices_buffer_offset)
glDrawPointArraysback to summary
private final void glDrawPointArrays(final GL2ES2 gl, final int first, final int count)
glDrawPointsback to summary
private void glDrawPoints(final GL2ES2 gl, final GLRunnable2<Object, Object> glDrawAction, final Object args)
glEnableback to summary
public boolean glEnable(final int cap, final boolean enable)
Returns:boolean

false if digested in regard to GL2ES2 spec, eg this call must not be passed to an underlying ES2 implementation. true if this call shall be passed to an underlying GL2ES2/ES2 implementation as well.

glEnableClientStateback to summary
public void glEnableClientState(final GL2ES2 gl, final int glArrayIndex)
glEnableTextureback to summary
private boolean glEnableTexture(final boolean enable, final int unit)

Enables/Disables the named texture unit (if changed), returns previous state

glGetTexEnvivback to summary
public void glGetTexEnviv(final int target, final int pname, final IntBuffer params)
glGetTexEnvivback to summary
public void glGetTexEnviv(final int target, final int pname, final int[] params, final int params_offset)
glLightfvback to summary
public void glLightfv(final GL2ES2 gl, int light, final int pname, final FloatBuffer params)
glMaterialfvback to summary
public void glMaterialfv(final GL2ES2 gl, final int face, final int pname, final FloatBuffer params)
glNormalPointerback to summary
public void glNormalPointer(final GL2ES2 gl, final GLArrayData data)
glPointParameterfback to summary
public void glPointParameterf(final int pname, final float param)
glPointParameterfvback to summary
public void glPointParameterfv(final int pname, final float[] params, final int params_offset)
glPointParameterfvback to summary
public void glPointParameterfv(final int pname, final FloatBuffer params)
glPointSizeback to summary
public void glPointSize(final float size)
glShadeModelback to summary
public void glShadeModel(final GL2ES2 gl, final int mode)
glTexCoordPointerback to summary
public void glTexCoordPointer(final GL2ES2 gl, final GLArrayData data)
glTexEnviback to summary
public void glTexEnvi(final int target, final int pname, final int value)
glTexImage2Dback to summary
public void glTexImage2D(final int target, final int internalformat, final int format)
glToggleClientStateback to summary
private void glToggleClientState(final GL2ES2 gl, final int glArrayIndex, final boolean enable)
glVertexPointerback to summary
public void glVertexPointer(final GL2ES2 gl, final GLArrayData data)
initback to summary
private void init(final GL2ES2 gl, final ShaderSelectionMode mode, final PMVMatrix pmvMatrix)
isValidback to summary
public boolean isValid()
loadShaderback to summary
private final void loadShader(final GL2ES2 gl, final ShaderSelectionMode mode)
loadShaderPointsback to summary
private final void loadShaderPoints(final GL2ES2 gl)
selectShaderProgramback to summary
private ShaderProgram selectShaderProgram(final GL2ES2 gl, ShaderSelectionMode newMode)
setShaderSelectionModeback to summary
public void setShaderSelectionMode(final ShaderSelectionMode mode)
setTextureEnvModeback to summary
private void setTextureEnvMode(final int value)
setVerboseback to summary
public void setVerbose(final boolean v)
textureEnabledCountback to summary
private final int textureEnabledCount()
toHexStringback to summary
private String toHexString(final int i)
toStringback to summary
public StringBuilder toString(StringBuilder sb, final boolean alsoUnlocated)
toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object.

Returns:String

a string representation of the object

Annotations
@Override
validateback to summary
public void validate(final GL2ES2 gl, final boolean selectShader)
verboseback to summary
public boolean verbose()