RTShader
Core
Collaboration diagram for RTShader:

## Classes

class | Ogre::RTShader::CGProgramProcessor
| CG Language program processor class. More...
class | Ogre::RTShader::CGProgramWriter
| CG target language writer implementation. More...
class | Ogre::RTShader::ConstParameter< valueType >
| Helper template which is the base for our ConstParameters. More...
class | Ogre::RTShader::Function
| A class that represents a shader based program function. More...
class | Ogre::RTShader::FunctionAtom
| A class that represents an atomic code section of shader based program function. More...
class | Ogre::RTShader::FunctionInvocation
| A class that represents function invocation code from shader based program function. More...
class | Ogre::RTShader::GLSLESProgramProcessor
| GLSL ES Language program processor class. More...
class | Ogre::RTShader::GLSLESProgramWriter
| GLSL ES target language writer implementation. More...
class | Ogre::RTShader::GLSLProgramProcessor
| GLSL Language program processor class. More...
class | Ogre::RTShader::GLSLProgramWriter
| GLSL target language writer implementation. More...
class | Ogre::RTShader::HLSLProgramProcessor
| CG Language program processor class. More...
class | Ogre::RTShader::HLSLProgramWriter
| HLSL target language writer implementation. More...
class | Ogre::RTShader::Operand
| A class that represents a function operand (its the combination of a parameter the in/out semantic and the used fields) More...
class | Ogre::RTShader::Parameter
| A class that represents a shader based program parameter. More...
class | Ogre::RTShader::ParameterFactory
| Helper utility class that creates common parameters. More...
class | Ogre::RTShader::Program
| A class that represents a shader based program. More...
class | Ogre::RTShader::ProgramManager
| A singleton manager class that manages shader based programs. More...
class | Ogre::RTShader::ProgramProcessor
| A class that provides extra processing services on CPU based programs. More...
class | Ogre::RTShader::ProgramSet
| Container class for shader based programs. More...
class | Ogre::RTShader::ProgramWriter
| Base class interface for shader program writers. More...
class | Ogre::RTShader::ProgramWriterFactory
| Interface definition for factories of ShaderProgramWriter. More...
class | Ogre::RTShader::ProgramWriterManager
class | Ogre::RTShader::RenderState
| This is a container class for sub render state class. More...
class | Ogre::RTShader::SGMaterialSerializerListener
| This class responsible for translating core features of the RT Shader System for Ogre material scripts. More...
class | Ogre::RTShader::SGScriptTranslator
| This class responsible for translating core features of the RT Shader System for Ogre material scripts. More...
class | Ogre::RTShader::ShaderGenerator
| Shader generator system main interface. More...
class | Ogre::RTShader::ShaderProgramWriterCGFactory
| CG program writer factory implementation. More...
class | Ogre::RTShader::ShaderProgramWriterGLSLESFactory
| GLSL ES program writer factory implementation. More...
class | Ogre::RTShader::ShaderProgramWriterGLSLFactory
| GLSL program writer factory implementation. More...
class | Ogre::RTShader::ShaderProgramWriterHLSLFactory
| HLSL program writer factory implementation. More...
class | Ogre::RTShader::SubRenderState
| This class is the base interface of sub part from a shader based rendering pipeline. More...
class | Ogre::RTShader::SubRenderStateAccessor
| This class uses as accessor from a template SubRenderState to all of its instances that created based on it. More...
class | Ogre::RTShader::SubRenderStateFactory
| Abstract factory interface for creating SubRenderState implementation instances. More...
class | Ogre::RTShader::TargetRenderState
| This is the target render state. More...
class | Ogre::RTShader::UniformParameter
| Uniform parameter class. More...

## Macros

#define | FFP_FUNC_ADD "FFP_Add"
#define | FFP_FUNC_ADDSIGNED "FFP_AddSigned"
#define | FFP_FUNC_ADDSMOOTH "FFP_AddSmooth"
#define | FFP_FUNC_ASSIGN "FFP_Assign"
#define | FFP_FUNC_CONSTRUCT "FFP_Construct"
#define | FFP_FUNC_DOTPRODUCT "FFP_DotProduct"
#define | FFP_FUNC_GENERATE_TEXCOORD_ENV_NORMAL "FFP_GenerateTexCoord_EnvMap_Normal"
#define | FFP_FUNC_GENERATE_TEXCOORD_ENV_REFLECT "FFP_GenerateTexCoord_EnvMap_Reflect"
#define | FFP_FUNC_GENERATE_TEXCOORD_ENV_SPHERE "FFP_GenerateTexCoord_EnvMap_Sphere"
#define | FFP_FUNC_GENERATE_TEXCOORD_PROJECTION "FFP_GenerateTexCoord_Projection"
#define | FFP_FUNC_LERP "FFP_Lerp"
#define | FFP_FUNC_LIGHT_DIRECTIONAL_DIFFUSE "FFP_Light_Directional_Diffuse"
#define | FFP_FUNC_LIGHT_DIRECTIONAL_DIFFUSESPECULAR "FFP_Light_Directional_DiffuseSpecular"
#define | FFP_FUNC_LIGHT_POINT_DIFFUSE "FFP_Light_Point_Diffuse"
#define | FFP_FUNC_LIGHT_POINT_DIFFUSESPECULAR "FFP_Light_Point_DiffuseSpecular"
#define | FFP_FUNC_LIGHT_SPOT_DIFFUSE "FFP_Light_Spot_Diffuse"
#define | FFP_FUNC_LIGHT_SPOT_DIFFUSESPECULAR "FFP_Light_Spot_DiffuseSpecular"
#define | FFP_FUNC_MODULATE "FFP_Modulate"
#define | FFP_FUNC_MODULATEX2 "FFP_ModulateX2"
#define | FFP_FUNC_MODULATEX4 "FFP_ModulateX4"
#define | FFP_FUNC_NORMALIZE "FFP_Normalize"
#define | FFP_FUNC_PIXELFOG_DEPTH "FFP_PixelFog_Depth"
#define | FFP_FUNC_PIXELFOG_EXP "FFP_PixelFog_Exp"
#define | FFP_FUNC_PIXELFOG_EXP2 "FFP_PixelFog_Exp2"
#define | FFP_FUNC_PIXELFOG_LINEAR "FFP_PixelFog_Linear"
#define | FFP_FUNC_SAMPLE_TEXTURE "FFP_SampleTexture"
#define | FFP_FUNC_SAMPLE_TEXTURE_PROJ "FFP_SampleTextureProj"
#define | FFP_FUNC_SUBTRACT "FFP_Subtract"
#define | FFP_FUNC_TRANSFORM "FFP_Transform"
#define | FFP_FUNC_TRANSFORM_TEXCOORD "FFP_TransformTexCoord"
#define | FFP_FUNC_VERTEXFOG_EXP "FFP_VertexFog_Exp"
#define | FFP_FUNC_VERTEXFOG_EXP2 "FFP_VertexFog_Exp2"
#define | FFP_FUNC_VERTEXFOG_LINEAR "FFP_VertexFog_Linear"
#define | FFP_LIB_COMMON "FFPLib_Common"
#define | FFP_LIB_FOG "FFPLib_Fog"
#define | FFP_LIB_LIGHTING "FFPLib_Lighting"
#define | FFP_LIB_TEXTURING "FFPLib_Texturing"
#define | FFP_LIB_TRANSFORM "FFPLib_Transform"

## Typedefs

typedef FunctionAtomInstanceList::const_iterator | Ogre::RTShader::FunctionAtomInstanceConstIterator
typedef FunctionAtomInstanceList::iterator | Ogre::RTShader::FunctionAtomInstanceIterator
typedef vector< FunctionAtom * >::type | Ogre::RTShader::FunctionAtomInstanceList
typedef SharedPtr< Parameter > | Ogre::RTShader::ParameterPtr
typedef RenderStateList::const_iterator | Ogre::RTShader::RenderStateConstIterator
typedef RenderStateList::iterator | Ogre::RTShader::RenderStateIterator
typedef vector< RenderState * >::type | Ogre::RTShader::RenderStateList
typedef vector< ShaderGenerator::SGPass * >::type | Ogre::RTShader::SGMaterialSerializerListener::SGPassList
typedef SGPassList::const_iterator | Ogre::RTShader::SGMaterialSerializerListener::SGPassListConstIterator
typedef SGPassList::iterator | Ogre::RTShader::SGMaterialSerializerListener::SGPassListIterator
typedef ShaderFunctionList::const_iterator | Ogre::RTShader::ShaderFunctionConstIterator
typedef ShaderFunctionList::iterator | Ogre::RTShader::ShaderFunctionIterator
typedef vector< Function * >::type | Ogre::RTShader::ShaderFunctionList
typedef ShaderParameterList::const_iterator | Ogre::RTShader::ShaderParameterConstIterator
typedef ShaderParameterList::iterator | Ogre::RTShader::ShaderParameterIterator
typedef vector< ParameterPtr >::type | Ogre::RTShader::ShaderParameterList
typedef SharedPtr< SubRenderStateAccessor > | Ogre::RTShader::SubRenderStateAccessorPtr
typedef vector< SubRenderState * >::type | Ogre::RTShader::SubRenderStateList
typedef SubRenderStateList::const_iterator | Ogre::RTShader::SubRenderStateListConstIterator
typedef SubRenderStateList::iterator | Ogre::RTShader::SubRenderStateListIterator
typedef set< SubRenderState * >::type | Ogre::RTShader::SubRenderStateSet
typedef SubRenderStateSet::const_iterator | Ogre::RTShader::SubRenderStateSetConstIterator
typedef SubRenderStateSet::iterator | Ogre::RTShader::SubRenderStateSetIterator
typedef UniformParameterList::const_iterator | Ogre::RTShader::UniformParameterConstIterator
typedef UniformParameterList::iterator | Ogre::RTShader::UniformParameterIterator
typedef vector< UniformParameterPtr >::type | Ogre::RTShader::UniformParameterList
typedef SharedPtr< UniformParameter > | Ogre::RTShader::UniformParameterPtr

## Enumerations

enum | Ogre::RTShader::FFPFragmentShaderStage { Ogre::RTShader::FFP_PS_PRE_PROCESS = 0, Ogre::RTShader::FFP_PS_COLOUR_BEGIN = 100, Ogre::RTShader::FFP_PS_SAMPLING = 150, Ogre::RTShader::FFP_PS_TEXTURING = 200, Ogre::RTShader::FFP_PS_COLOUR_END = 300, Ogre::RTShader::FFP_PS_FOG = 400, Ogre::RTShader::FFP_PS_POST_PROCESS = 500 }
enum | Ogre::RTShader::FFPShaderStage { Ogre::RTShader::FFP_PRE_PROCESS = 0, Ogre::RTShader::FFP_TRANSFORM = 100, Ogre::RTShader::FFP_COLOUR = 200, Ogre::RTShader::FFP_LIGHTING = 300, Ogre::RTShader::FFP_TEXTURING = 400, Ogre::RTShader::FFP_FOG = 500, Ogre::RTShader::FFP_POST_PROCESS = 600 }
enum | Ogre::RTShader::FFPVertexShaderStage { Ogre::RTShader::FFP_VS_PRE_PROCESS = 0, Ogre::RTShader::FFP_VS_TRANSFORM = 100, Ogre::RTShader::FFP_VS_COLOUR = 200, Ogre::RTShader::FFP_VS_LIGHTING = 300, Ogre::RTShader::FFP_VS_TEXTURING = 400, Ogre::RTShader::FFP_VS_FOG = 500, Ogre::RTShader::FFP_VS_POST_PROCESS = 2000 }

## Functions

| Ogre::RTShader::SGMaterialSerializerListener::SGMaterialSerializerListener ()
| Will be create and destroyed via ShaderGenerator interface. More...
| Ogre::RTShader::SGScriptTranslator::SGScriptTranslator ()
| Ogre::RTShader::SGMaterialSerializerListener::~SGMaterialSerializerListener ()
void | Ogre::RTShader::SGScriptTranslator::addSubRenderState (SubRenderState *newSubRenderState, const String &dstTechniqueSchemeName, const String &materialName, const String &groupName, unsigned short passIndex)
| Adds a newly created subrender state to the material being translated. More...
void | Ogre::RTShader::SGMaterialSerializerListener::createSGPassList (Material *mat, SGPassList &passList)
| Internal method that creates list of SGPass instances composing the given material. More...
virtual SubRenderState * | Ogre::RTShader::SGScriptTranslator::getGeneratedSubRenderState (const String &typeName)
| Returns a sub render state of a given name which has already been created for material currently being generated by the script translator. More...
ShaderGenerator::SGPass * | Ogre::RTShader::SGMaterialSerializerListener::getShaderGeneratedPass (const Pass *srcPass)
| Internal method that returns SGPass instance from a given source pass. More...
virtual void | Ogre::RTShader::SGMaterialSerializerListener::materialEventRaised (MaterialSerializer *ser, MaterialSerializer::SerializeEvent event, bool &skip, const Material *mat)
virtual void | Ogre::RTShader::SGMaterialSerializerListener::passEventRaised (MaterialSerializer *ser, MaterialSerializer::SerializeEvent event, bool &skip, const Pass *tech)
virtual void | Ogre::RTShader::SGMaterialSerializerListener::techniqueEventRaised (MaterialSerializer *ser, MaterialSerializer::SerializeEvent event, bool &skip, const Technique *tech)
virtual void | Ogre::RTShader::SGMaterialSerializerListener::textureUnitStateEventRaised (MaterialSerializer *ser, MaterialSerializer::SerializeEvent event, bool &skip, const TextureUnitState *textureUnit)
virtual void | Ogre::RTShader::SGScriptTranslator::translate (ScriptCompiler *compiler, const AbstractNodePtr &node)
void | Ogre::RTShader::SGScriptTranslator::translatePass (ScriptCompiler *compiler, const AbstractNodePtr &node)
| Translates RT Shader System section within a pass context. More...
void | Ogre::RTShader::SGScriptTranslator::translateTextureUnit (ScriptCompiler *compiler, const AbstractNodePtr &node)
| Translates RT Shader System section within a texture_unit context. More...

## Variables

RenderState * | Ogre::RTShader::SGScriptTranslator::mGeneratedRenderState
SGPassList | Ogre::RTShader::SGMaterialSerializerListener::mSGPassList
Material * | Ogre::RTShader::SGMaterialSerializerListener::mSourceMaterial

## Friends

class | Ogre::RTShader::SGMaterialSerializerListener::ShaderGenerator

## Detailed Description

## Macro Definition Documentation

## FFP_FUNC_ADD

#define FFP_FUNC_ADD "FFP_Add"

Definition at line 83 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_ADDSIGNED

#define FFP_FUNC_ADDSIGNED "FFP_AddSigned"

Definition at line 113 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_ADDSMOOTH

#define FFP_FUNC_ADDSMOOTH "FFP_AddSmooth"

Definition at line 114 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_ASSIGN

#define FFP_FUNC_ASSIGN "FFP_Assign"

Definition at line 80 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_CONSTRUCT

#define FFP_FUNC_CONSTRUCT "FFP_Construct"

Definition at line 81 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_DOTPRODUCT

#define FFP_FUNC_DOTPRODUCT "FFP_DotProduct"

Definition at line 86 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_GENERATE_TEXCOORD_ENV_NORMAL

#define FFP_FUNC_GENERATE_TEXCOORD_ENV_NORMAL "FFP_GenerateTexCoord_EnvMap_Normal"

Definition at line 105 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_GENERATE_TEXCOORD_ENV_REFLECT

#define FFP_FUNC_GENERATE_TEXCOORD_ENV_REFLECT "FFP_GenerateTexCoord_EnvMap_Reflect"

Definition at line 107 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_GENERATE_TEXCOORD_ENV_SPHERE

#define FFP_FUNC_GENERATE_TEXCOORD_ENV_SPHERE "FFP_GenerateTexCoord_EnvMap_Sphere"

Definition at line 106 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_GENERATE_TEXCOORD_PROJECTION

#define FFP_FUNC_GENERATE_TEXCOORD_PROJECTION "FFP_GenerateTexCoord_Projection"

Definition at line 108 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_LERP

#define FFP_FUNC_LERP "FFP_Lerp"

Definition at line 85 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_LIGHT_DIRECTIONAL_DIFFUSE

#define FFP_FUNC_LIGHT_DIRECTIONAL_DIFFUSE "FFP_Light_Directional_Diffuse"

Definition at line 95 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_LIGHT_DIRECTIONAL_DIFFUSESPECULAR

#define FFP_FUNC_LIGHT_DIRECTIONAL_DIFFUSESPECULAR "FFP_Light_Directional_DiffuseSpecular"

Definition at line 96 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_LIGHT_POINT_DIFFUSE

#define FFP_FUNC_LIGHT_POINT_DIFFUSE "FFP_Light_Point_Diffuse"

Definition at line 97 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_LIGHT_POINT_DIFFUSESPECULAR

#define FFP_FUNC_LIGHT_POINT_DIFFUSESPECULAR "FFP_Light_Point_DiffuseSpecular"

Definition at line 98 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_LIGHT_SPOT_DIFFUSE

#define FFP_FUNC_LIGHT_SPOT_DIFFUSE "FFP_Light_Spot_Diffuse"

Definition at line 99 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_LIGHT_SPOT_DIFFUSESPECULAR

#define FFP_FUNC_LIGHT_SPOT_DIFFUSESPECULAR "FFP_Light_Spot_DiffuseSpecular"

Definition at line 100 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_MODULATE

#define FFP_FUNC_MODULATE "FFP_Modulate"

Definition at line 82 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_MODULATEX2

#define FFP_FUNC_MODULATEX2 "FFP_ModulateX2"

Definition at line 111 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_MODULATEX4

#define FFP_FUNC_MODULATEX4 "FFP_ModulateX4"

Definition at line 112 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_NORMALIZE

#define FFP_FUNC_NORMALIZE "FFP_Normalize"

Definition at line 87 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_PIXELFOG_DEPTH

#define FFP_FUNC_PIXELFOG_DEPTH "FFP_PixelFog_Depth"

Definition at line 121 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_PIXELFOG_EXP

#define FFP_FUNC_PIXELFOG_EXP "FFP_PixelFog_Exp"

Definition at line 123 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_PIXELFOG_EXP2

#define FFP_FUNC_PIXELFOG_EXP2 "FFP_PixelFog_Exp2"

Definition at line 124 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_PIXELFOG_LINEAR

#define FFP_FUNC_PIXELFOG_LINEAR "FFP_PixelFog_Linear"

Definition at line 122 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_SAMPLE_TEXTURE

#define FFP_FUNC_SAMPLE_TEXTURE "FFP_SampleTexture"

Definition at line 109 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_SAMPLE_TEXTURE_PROJ

#define FFP_FUNC_SAMPLE_TEXTURE_PROJ "FFP_SampleTextureProj"

Definition at line 110 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_SUBTRACT

#define FFP_FUNC_SUBTRACT "FFP_Subtract"

Definition at line 84 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_TRANSFORM

#define FFP_FUNC_TRANSFORM "FFP_Transform"

Definition at line 91 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_TRANSFORM_TEXCOORD

#define FFP_FUNC_TRANSFORM_TEXCOORD "FFP_TransformTexCoord"

Definition at line 104 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_VERTEXFOG_EXP

#define FFP_FUNC_VERTEXFOG_EXP "FFP_VertexFog_Exp"

Definition at line 119 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_VERTEXFOG_EXP2

#define FFP_FUNC_VERTEXFOG_EXP2 "FFP_VertexFog_Exp2"

Definition at line 120 of file OgreShaderFFPRenderState.h.

## FFP_FUNC_VERTEXFOG_LINEAR

#define FFP_FUNC_VERTEXFOG_LINEAR "FFP_VertexFog_Linear"

Definition at line 118 of file OgreShaderFFPRenderState.h.

## FFP_LIB_COMMON

#define FFP_LIB_COMMON "FFPLib_Common"

Definition at line 79 of file OgreShaderFFPRenderState.h.

## FFP_LIB_FOG

#define FFP_LIB_FOG "FFPLib_Fog"

Definition at line 117 of file OgreShaderFFPRenderState.h.

## FFP_LIB_LIGHTING

#define FFP_LIB_LIGHTING "FFPLib_Lighting"

Definition at line 94 of file OgreShaderFFPRenderState.h.

## FFP_LIB_TEXTURING

#define FFP_LIB_TEXTURING "FFPLib_Texturing"

Definition at line 103 of file OgreShaderFFPRenderState.h.

## FFP_LIB_TRANSFORM

#define FFP_LIB_TRANSFORM "FFPLib_Transform"

Definition at line 90 of file OgreShaderFFPRenderState.h.

## Typedef Documentation

## FunctionAtomInstanceConstIterator

typedef FunctionAtomInstanceList::const_iterator Ogre::RTShader::FunctionAtomInstanceConstIterator

Definition at line 259 of file OgreShaderFunctionAtom.h.

## FunctionAtomInstanceIterator

typedef FunctionAtomInstanceList::iterator Ogre::RTShader::FunctionAtomInstanceIterator

Definition at line 258 of file OgreShaderFunctionAtom.h.

## FunctionAtomInstanceList

typedef vector<FunctionAtom*>::type Ogre::RTShader::FunctionAtomInstanceList

Definition at line 257 of file OgreShaderFunctionAtom.h.

## ParameterPtr

typedef SharedPtr<Parameter> Ogre::RTShader::ParameterPtr

Definition at line 369 of file OgreShaderParameter.h.

## RenderStateConstIterator

typedef RenderStateList::const_iterator Ogre::RTShader::RenderStateConstIterator

Definition at line 131 of file OgreShaderRenderState.h.

## RenderStateIterator

typedef RenderStateList::iterator Ogre::RTShader::RenderStateIterator

Definition at line 130 of file OgreShaderRenderState.h.

## RenderStateList

typedef vector<RenderState*>::type Ogre::RTShader::RenderStateList

Definition at line 129 of file OgreShaderRenderState.h.

## SGPassList

typedef vector<ShaderGenerator::SGPass*>::type Ogre::RTShader::SGMaterialSerializerListener::SGPassList

protected

Definition at line 79 of file OgreShaderMaterialSerializerListener.h.

## SGPassListConstIterator

typedef SGPassList::const_iterator Ogre::RTShader::SGMaterialSerializerListener::SGPassListConstIterator

protected

Definition at line 81 of file OgreShaderMaterialSerializerListener.h.

## SGPassListIterator

typedef SGPassList::iterator Ogre::RTShader::SGMaterialSerializerListener::SGPassListIterator

protected

Definition at line 80 of file OgreShaderMaterialSerializerListener.h.

## ShaderFunctionConstIterator

typedef ShaderFunctionList::const_iterator Ogre::RTShader::ShaderFunctionConstIterator

Definition at line 223 of file OgreShaderFunction.h.

## ShaderFunctionIterator

typedef ShaderFunctionList::iterator Ogre::RTShader::ShaderFunctionIterator

Definition at line 222 of file OgreShaderFunction.h.

## ShaderFunctionList

typedef vector<Function*>::type Ogre::RTShader::ShaderFunctionList

Definition at line 221 of file OgreShaderFunction.h.

## ShaderParameterConstIterator

typedef ShaderParameterList::const_iterator Ogre::RTShader::ShaderParameterConstIterator

Definition at line 372 of file OgreShaderParameter.h.

## ShaderParameterIterator

typedef ShaderParameterList::iterator Ogre::RTShader::ShaderParameterIterator

Definition at line 371 of file OgreShaderParameter.h.

## ShaderParameterList

typedef vector<ParameterPtr>::type Ogre::RTShader::ShaderParameterList

Definition at line 370 of file OgreShaderParameter.h.

## SubRenderStateAccessorPtr

typedef SharedPtr<SubRenderStateAccessor> Ogre::RTShader::SubRenderStateAccessorPtr

Definition at line 48 of file OgreShaderSubRenderState.h.

## SubRenderStateList

typedef vector<SubRenderState*>::type Ogre::RTShader::SubRenderStateList

Definition at line 162 of file OgreShaderSubRenderState.h.

## SubRenderStateListConstIterator

typedef SubRenderStateList::const_iterator Ogre::RTShader::SubRenderStateListConstIterator

Definition at line 164 of file OgreShaderSubRenderState.h.

## SubRenderStateListIterator

typedef SubRenderStateList::iterator Ogre::RTShader::SubRenderStateListIterator

Definition at line 163 of file OgreShaderSubRenderState.h.

## SubRenderStateSet

typedef set<SubRenderState*>::type Ogre::RTShader::SubRenderStateSet

Definition at line 166 of file OgreShaderSubRenderState.h.

## SubRenderStateSetConstIterator

typedef SubRenderStateSet::const_iterator Ogre::RTShader::SubRenderStateSetConstIterator

Definition at line 168 of file OgreShaderSubRenderState.h.

## SubRenderStateSetIterator

typedef SubRenderStateSet::iterator Ogre::RTShader::SubRenderStateSetIterator

Definition at line 167 of file OgreShaderSubRenderState.h.

## UniformParameterConstIterator

typedef UniformParameterList::const_iterator Ogre::RTShader::UniformParameterConstIterator

Definition at line 571 of file OgreShaderParameter.h.

## UniformParameterIterator

typedef UniformParameterList::iterator Ogre::RTShader::UniformParameterIterator

Definition at line 570 of file OgreShaderParameter.h.

## UniformParameterList

typedef vector<UniformParameterPtr>::type Ogre::RTShader::UniformParameterList

Definition at line 569 of file OgreShaderParameter.h.

## UniformParameterPtr

typedef SharedPtr<UniformParameter> Ogre::RTShader::UniformParameterPtr

Definition at line 568 of file OgreShaderParameter.h.

## Enumeration Type Documentation

## FFPFragmentShaderStage

enum Ogre::RTShader::FFPFragmentShaderStage

Enumerator
FFP_PS_PRE_PROCESS |
FFP_PS_COLOUR_BEGIN |
FFP_PS_SAMPLING |
FFP_PS_TEXTURING |
FFP_PS_COLOUR_END |
FFP_PS_FOG |
FFP_PS_POST_PROCESS |

Definition at line 55 of file OgreShaderFFPRenderState.h.

## FFPShaderStage

enum Ogre::RTShader::FFPShaderStage

Enumerator
FFP_PRE_PROCESS |
FFP_TRANSFORM |
FFP_COLOUR |
FFP_LIGHTING |
FFP_TEXTURING |
FFP_FOG |
FFP_POST_PROCESS |

Definition at line 67 of file OgreShaderFFPRenderState.h.

## FFPVertexShaderStage

enum Ogre::RTShader::FFPVertexShaderStage

Enumerator
FFP_VS_PRE_PROCESS |
FFP_VS_TRANSFORM |
FFP_VS_COLOUR |
FFP_VS_LIGHTING |
FFP_VS_TEXTURING |
FFP_VS_FOG |
FFP_VS_POST_PROCESS |

Definition at line 43 of file OgreShaderFFPRenderState.h.

## Function Documentation

## SGMaterialSerializerListener()

Ogre::RTShader::SGMaterialSerializerListener::SGMaterialSerializerListener | ( |  | ) |

protected

Will be create and destroyed via ShaderGenerator interface.

## SGScriptTranslator()

Ogre::RTShader::SGScriptTranslator::SGScriptTranslator | ( |  | ) |

## ~SGMaterialSerializerListener()

Ogre::RTShader::SGMaterialSerializerListener::~SGMaterialSerializerListener | ( |  | ) |

protected

## addSubRenderState()

void Ogre::RTShader::SGScriptTranslator::addSubRenderState | ( | SubRenderState * | newSubRenderState,
|  | const String & | dstTechniqueSchemeName,
|  | const String & | materialName,
|  | const String & | groupName,
|  | unsigned short | passIndex
| ) |  |

protected

Adds a newly created subrender state to the material being translated.

Parameters

  newSubRenderState | The sub-render state to add
  dstTechniqueSchemeName | The technique which the sub render state is associated with
  materialName | The material name which the sub render state is associated with
  groupName | The material group name which the sub render state is associated with
  passIndex | The index of the pass which the sub render state is associated with

## createSGPassList()

void Ogre::RTShader::SGMaterialSerializerListener::createSGPassList | ( | Material * | mat,
|  | SGPassList & | passList
| ) |  |

protected

Internal method that creates list of SGPass instances composing the given material.

## getGeneratedSubRenderState()

virtual SubRenderState* Ogre::RTShader::SGScriptTranslator::getGeneratedSubRenderState | ( | const String & | typeName | ) |

virtual

Returns a sub render state of a given name which has already been created for material currently being generated by the script translator.

Note
  This function is meant to be used from within the createInstance function of sub-render state factories to avoid creating multiple sub-render state to the same material.

Parameters

  typeName | The type of the sub-render state to find.

## getShaderGeneratedPass()

ShaderGenerator::SGPass* Ogre::RTShader::SGMaterialSerializerListener::getShaderGeneratedPass | ( | const Pass * | srcPass | ) |

protected

Internal method that returns SGPass instance from a given source pass.

## materialEventRaised()

virtual void Ogre::RTShader::SGMaterialSerializerListener::materialEventRaised | ( | MaterialSerializer * | ser,
|  | MaterialSerializer::SerializeEvent | event,
|  | bool & | skip,
|  | const Material * | mat
| ) |  |

virtual

See also
  MaterialSerializer::Listener::materialEventRaised

Reimplemented from Ogre::MaterialSerializer::Listener.

## passEventRaised()

virtual void Ogre::RTShader::SGMaterialSerializerListener::passEventRaised | ( | MaterialSerializer * | ser,
|  | MaterialSerializer::SerializeEvent | event,
|  | bool & | skip,
|  | const Pass * | tech
| ) |  |

virtual

See also
  MaterialSerializer::Listener::passEventRaised

Reimplemented from Ogre::MaterialSerializer::Listener.

## techniqueEventRaised()

virtual void Ogre::RTShader::SGMaterialSerializerListener::techniqueEventRaised | ( | MaterialSerializer * | ser,
|  | MaterialSerializer::SerializeEvent | event,
|  | bool & | skip,
|  | const Technique * | tech
| ) |  |

virtual

See also
  MaterialSerializer::Listener::techniqueEventRaised

Reimplemented from Ogre::MaterialSerializer::Listener.

## textureUnitStateEventRaised()

virtual void Ogre::RTShader::SGMaterialSerializerListener::textureUnitStateEventRaised | ( | MaterialSerializer * | ser,
|  | MaterialSerializer::SerializeEvent | event,
|  | bool & | skip,
|  | const TextureUnitState * | textureUnit
| ) |  |

virtual

See also
  MaterialSerializer::Listener::textureUnitStateEventRaised

Reimplemented from Ogre::MaterialSerializer::Listener.

## translate()

virtual void Ogre::RTShader::SGScriptTranslator::translate | ( | ScriptCompiler * | compiler,
|  | const AbstractNodePtr & | node
| ) |  |

virtual

See also
  ScriptTranslator::translate.

Implements Ogre::ScriptTranslator.

## translatePass()

void Ogre::RTShader::SGScriptTranslator::translatePass | ( | ScriptCompiler * | compiler,
|  | const AbstractNodePtr & | node
| ) |  |

protected

Translates RT Shader System section within a pass context.

Parameters

  compiler | The compiler invoking this translator
  node | The current AST node to be translated

## translateTextureUnit()

void Ogre::RTShader::SGScriptTranslator::translateTextureUnit | ( | ScriptCompiler * | compiler,
|  | const AbstractNodePtr & | node
| ) |  |

protected

Translates RT Shader System section within a texture_unit context.

Parameters

  compiler | The compiler invoking this translator
  node | The current AST node to be translated

## Variable Documentation

## mGeneratedRenderState

RenderState* Ogre::RTShader::SGScriptTranslator::mGeneratedRenderState

protected

Definition at line 138 of file OgreShaderScriptTranslator.h.

## mSGPassList

SGPassList Ogre::RTShader::SGMaterialSerializerListener::mSGPassList

protected

Definition at line 101 of file OgreShaderMaterialSerializerListener.h.

## mSourceMaterial

Material* Ogre::RTShader::SGMaterialSerializerListener::mSourceMaterial

protected

Definition at line 99 of file OgreShaderMaterialSerializerListener.h.

## Friends

## ShaderGenerator

friend class ShaderGenerator

friend

Definition at line 105 of file OgreShaderMaterialSerializerListener.h.

Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.