Maven module :un.engine : engine-opengl :
Class :
un.engine.opengl.shader.ShaderTemplate
Extends/Implements : -
Subclasses : -
Variables :
SHADER_VERTEX,
SHADER_TESS_CONTROL,
SHADER_TESS_EVAL,
SHADER_GEOMETRY,
SHADER_FRAGMENT
Functions :
ShaderTemplate,
ShaderTemplate,
getStructures,
getLayouts,
getUniforms,
getVariablesIn,
getVariablesWs,
getVariablesOut,
getFunctions,
getOperations,
append,
replaceTexts,
replaceTexts,
getShaderType,
getMinGLSLVersion,
setMinGLSLVersion,
isModified,
reset,
makeUnique,
addLayout,
addUniform,
addStructure,
addVariableIn,
addVariableWs,
addVariableOut,
addFunction,
addOperation,
loadFromChars,
load,
load,
createFromChars,
create,
create,
toCharacters
public int
SHADER_VERTEX
public int
SHADER_TESS_CONTROL
public int
SHADER_TESS_EVAL
public int
SHADER_GEOMETRY
public int
SHADER_FRAGMENT
public void
ShaderTemplate (int type)
public void
ShaderTemplate (ShaderTemplate toCopy)
public Sequence
getStructures ()
public Sequence
getLayouts ()
public Sequence
getUniforms ()
public ArraySequenceSet
getVariablesIn ()
public ArraySequenceSet
getVariablesWs ()
public ArraySequenceSet
getVariablesOut ()
public Sequence
getFunctions ()
public Sequence
getOperations ()
public void
append (ShaderTemplate other)
public void
replaceTexts (Dictionary replacement)
public void
replaceTexts (Chars oldc, Chars newc)
public int
getShaderType ()
public int
getMinGLSLVersion ()
public void
setMinGLSLVersion (int minGlslVersion)
public boolean
isModified ()
public void
reset ()
public Chars
makeUnique (Chars name)
public void
addLayout (Chars code)
public void
addUniform (Chars code)
public void
addStructure (Chars code)
public void
addVariableIn (Chars code)
public void
addVariableWs (Chars code)
public void
addVariableOut (Chars code)
public void
addFunction (Chars code)
public void
addOperation (Chars code)
public void
loadFromChars (Chars text, int type)
public void
load (Chars path, int type)
public void
load (Path p, int type)
public ShaderTemplate
createFromChars (Chars text, int type)
public ShaderTemplate
create (Chars path, int type)
public ShaderTemplate
create (Path p, int type)
public Chars
toCharacters (int previousStage)
Textures,materials, lights,... will fill it with various elements :
- uniform
- in/out variables
- functions
- ...
The generated shader will have the form :
{layouts}
{uniforms}
{structures}
in inModel {
{variables_in}
} inData;
out outModel {
{variables_out}
} outData;
{variables_ws}
{functions}
main(){
{operations}
}
@author Johann Sorel