OGRE
1.12.13
Object-Oriented Graphics Rendering Engine
|
A class that represents a shader based program parameter. More...
#include <OgreShaderParameter.h>
Public Member Functions | |
Parameter () | |
Parameter (GpuConstantType type, const String &name, const Semantic &semantic, int index, const Content &content, size_t size=0) | |
Class constructor. More... | |
virtual | ~Parameter () |
Class destructor. More... | |
void | _rename (const String &newName, bool onlyLocal=false) |
internal function for aliasing to GLSL builtins e.g. gl_Position More... | |
Content | getContent () const |
Return the content of this parameter. More... | |
int | getIndex () const |
Get the index of this parameter. More... | |
const String & | getName () const |
Get the name of this parameter. More... | |
const Semantic & | getSemantic () const |
Get the semantic of this parameter. More... | |
size_t | getSize () const |
Returns the number of elements in the parameter (for arrays). More... | |
GpuConstantType | getType () const |
Get the type of this parameter. More... | |
bool | isArray () const |
Returns Whether this parameter is an array. More... | |
virtual bool | isConstParameter () const |
Returns true if this instance is a ConstParameter otherwise false. More... | |
bool | isUsed () |
void | setSize (size_t size) |
Sets the number of elements in the parameter (for arrays). More... | |
void | setUsed (bool used) |
track whether this was used More... | |
virtual String | toString () const |
Returns the string representation of this parameter. More... | |
A class that represents a shader based program parameter.
Enumerator | |
---|---|
SPS_UNKNOWN | Unknown semantic. |
SPS_POSITION | Position. |
SPS_BLEND_WEIGHTS | Blending weights. |
SPS_BLEND_INDICES | Blending indices. |
SPS_NORMAL | Normal, 3 reals per vertex. |
SPS_COLOR | General floating point color. |
SPS_TEXTURE_COORDINATES | Texture coordinates. |
SPS_BINORMAL | Binormal (Y axis if normal is Z) |
SPS_TANGENT | Tangent (X axis if normal is Z) |
Shader parameter content.
used to resolve Parameters across different SubRenderState instances Think of it as Semantic extended to the actual parameter content.
Enumerator | |
---|---|
SPC_UNKNOWN | Unknown content. |
SPC_POSITION_OBJECT_SPACE | Position in object space. |
SPC_POSITION_WORLD_SPACE | Position in world space. |
SPC_POSITION_VIEW_SPACE | Position in view space. |
SPC_POSITION_PROJECTIVE_SPACE | Position in projective space. |
SPC_POSITION_LIGHT_SPACE0 | Position in light space index 0-7. |
SPC_POSITION_LIGHT_SPACE1 | |
SPC_POSITION_LIGHT_SPACE2 | |
SPC_POSITION_LIGHT_SPACE3 | |
SPC_POSITION_LIGHT_SPACE4 | |
SPC_POSITION_LIGHT_SPACE5 | |
SPC_POSITION_LIGHT_SPACE6 | |
SPC_POSITION_LIGHT_SPACE7 | |
SPC_NORMAL_OBJECT_SPACE | Normal in object space. |
SPC_NORMAL_WORLD_SPACE | Normal in world space. |
SPC_NORMAL_VIEW_SPACE | Normal in view space. |
SPC_NORMAL_TANGENT_SPACE | Normal in tangent space. |
SPC_POSTOCAMERA_OBJECT_SPACE | View vector in object space. |
SPC_POSTOCAMERA_WORLD_SPACE | View vector in world space. |
SPC_POSTOCAMERA_VIEW_SPACE | View vector in view space. |
SPC_POSTOCAMERA_TANGENT_SPACE | View vector in tangent space. |
SPC_POSTOLIGHT_OBJECT_SPACE0 | Light vector in object space index 0-7. |
SPC_POSTOLIGHT_OBJECT_SPACE1 | |
SPC_POSTOLIGHT_OBJECT_SPACE2 | |
SPC_POSTOLIGHT_OBJECT_SPACE3 | |
SPC_POSTOLIGHT_OBJECT_SPACE4 | |
SPC_POSTOLIGHT_OBJECT_SPACE5 | |
SPC_POSTOLIGHT_OBJECT_SPACE6 | |
SPC_POSTOLIGHT_OBJECT_SPACE7 | |
SPC_POSTOLIGHT_WORLD_SPACE0 | Light vector in world space index 0-7. |
SPC_POSTOLIGHT_WORLD_SPACE1 | |
SPC_POSTOLIGHT_WORLD_SPACE2 | |
SPC_POSTOLIGHT_WORLD_SPACE3 | |
SPC_POSTOLIGHT_WORLD_SPACE4 | |
SPC_POSTOLIGHT_WORLD_SPACE5 | |
SPC_POSTOLIGHT_WORLD_SPACE6 | |
SPC_POSTOLIGHT_WORLD_SPACE7 | |
SPC_POSTOLIGHT_VIEW_SPACE0 | Light vector in view space index 0-7. |
SPC_POSTOLIGHT_VIEW_SPACE1 | |
SPC_POSTOLIGHT_VIEW_SPACE2 | |
SPC_POSTOLIGHT_VIEW_SPACE3 | |
SPC_POSTOLIGHT_VIEW_SPACE4 | |
SPC_POSTOLIGHT_VIEW_SPACE5 | |
SPC_POSTOLIGHT_VIEW_SPACE6 | |
SPC_POSTOLIGHT_VIEW_SPACE7 | |
SPC_POSTOLIGHT_TANGENT_SPACE0 | Light vector in tangent space index 0-7. |
SPC_POSTOLIGHT_TANGENT_SPACE1 | |
SPC_POSTOLIGHT_TANGENT_SPACE2 | |
SPC_POSTOLIGHT_TANGENT_SPACE3 | |
SPC_POSTOLIGHT_TANGENT_SPACE4 | |
SPC_POSTOLIGHT_TANGENT_SPACE5 | |
SPC_POSTOLIGHT_TANGENT_SPACE6 | |
SPC_POSTOLIGHT_TANGENT_SPACE7 | |
SPC_LIGHTDIRECTION_OBJECT_SPACE0 | Light direction in object space index 0-7. |
SPC_LIGHTDIRECTION_OBJECT_SPACE1 | |
SPC_LIGHTDIRECTION_OBJECT_SPACE2 | |
SPC_LIGHTDIRECTION_OBJECT_SPACE3 | |
SPC_LIGHTDIRECTION_OBJECT_SPACE4 | |
SPC_LIGHTDIRECTION_OBJECT_SPACE5 | |
SPC_LIGHTDIRECTION_OBJECT_SPACE6 | |
SPC_LIGHTDIRECTION_OBJECT_SPACE7 | |
SPC_LIGHTDIRECTION_WORLD_SPACE0 | Light direction in world space index 0-7. |
SPC_LIGHTDIRECTION_WORLD_SPACE1 | |
SPC_LIGHTDIRECTION_WORLD_SPACE2 | |
SPC_LIGHTDIRECTION_WORLD_SPACE3 | |
SPC_LIGHTDIRECTION_WORLD_SPACE4 | |
SPC_LIGHTDIRECTION_WORLD_SPACE5 | |
SPC_LIGHTDIRECTION_WORLD_SPACE6 | |
SPC_LIGHTDIRECTION_WORLD_SPACE7 | |
SPC_LIGHTDIRECTION_VIEW_SPACE0 | Light direction in view space index 0-7. |
SPC_LIGHTDIRECTION_VIEW_SPACE1 | |
SPC_LIGHTDIRECTION_VIEW_SPACE2 | |
SPC_LIGHTDIRECTION_VIEW_SPACE3 | |
SPC_LIGHTDIRECTION_VIEW_SPACE4 | |
SPC_LIGHTDIRECTION_VIEW_SPACE5 | |
SPC_LIGHTDIRECTION_VIEW_SPACE6 | |
SPC_LIGHTDIRECTION_VIEW_SPACE7 | |
SPC_LIGHTDIRECTION_TANGENT_SPACE0 | Light direction in tangent space index 0-7. |
SPC_LIGHTDIRECTION_TANGENT_SPACE1 | |
SPC_LIGHTDIRECTION_TANGENT_SPACE2 | |
SPC_LIGHTDIRECTION_TANGENT_SPACE3 | |
SPC_LIGHTDIRECTION_TANGENT_SPACE4 | |
SPC_LIGHTDIRECTION_TANGENT_SPACE5 | |
SPC_LIGHTDIRECTION_TANGENT_SPACE6 | |
SPC_LIGHTDIRECTION_TANGENT_SPACE7 | |
SPC_LIGHTPOSITION_OBJECT_SPACE0 | Light position in object space index 0-7. |
SPC_LIGHTPOSITION_OBJECT_SPACE1 | |
SPC_LIGHTPOSITION_OBJECT_SPACE2 | |
SPC_LIGHTPOSITION_OBJECT_SPACE3 | |
SPC_LIGHTPOSITION_OBJECT_SPACE4 | |
SPC_LIGHTPOSITION_OBJECT_SPACE5 | |
SPC_LIGHTPOSITION_OBJECT_SPACE6 | |
SPC_LIGHTPOSITION_OBJECT_SPACE7 | |
SPC_LIGHTPOSITION_WORLD_SPACE0 | Light position in world space index 0-7. |
SPC_LIGHTPOSITION_WORLD_SPACE1 | |
SPC_LIGHTPOSITION_WORLD_SPACE2 | |
SPC_LIGHTPOSITION_WORLD_SPACE3 | |
SPC_LIGHTPOSITION_WORLD_SPACE4 | |
SPC_LIGHTPOSITION_WORLD_SPACE5 | |
SPC_LIGHTPOSITION_WORLD_SPACE6 | |
SPC_LIGHTPOSITION_WORLD_SPACE7 | |
SPC_LIGHTPOSITIONVIEW_SPACE0 | Light position in view space index 0-7. |
SPC_LIGHTPOSITIONVIEW_SPACE1 | |
SPC_LIGHTPOSITIONVIEW_SPACE2 | |
SPC_LIGHTPOSITIONVIEW_SPACE3 | |
SPC_LIGHTPOSITIONVIEW_SPACE4 | |
SPC_LIGHTPOSITIONVIEW_SPACE5 | |
SPC_LIGHTPOSITIONVIEW_SPACE6 | |
SPC_LIGHTPOSITIONVIEW_SPACE7 | |
SPC_LIGHTPOSITION_TANGENT_SPACE | Light position in tangent space index 0-7. |
SPC_BLEND_WEIGHTS | Blending weights. |
SPC_BLEND_INDICES | Blending indices. |
SPC_TANGENT_OBJECT_SPACE | Tangent in object space. |
SPC_TANGENT_WORLD_SPACE | Tangent in world space. |
SPC_TANGENT_VIEW_SPACE | Tangent in view space. |
SPC_TANGENT_TANGENT_SPACE | Tangent in tangent space. |
SPC_BINORMAL_OBJECT_SPACE | Binormal in object space. |
SPC_BINORMAL_WORLD_SPACE | Binormal in world space. |
SPC_BINORMAL_VIEW_SPACE | Binormal in view space. |
SPC_BINORMAL_TANGENT_SPACE | Binormal in tangent space. |
SPC_COLOR_DIFFUSE | Diffuse color. |
SPC_COLOR_SPECULAR | Specular color. |
SPC_DEPTH_OBJECT_SPACE | Depth in object space. |
SPC_DEPTH_WORLD_SPACE | Depth in world space. |
SPC_DEPTH_VIEW_SPACE | Depth in view space. |
SPC_DEPTH_PROJECTIVE_SPACE | Depth in projective space. |
SPC_TEXTURE_COORDINATE0 | Texture coordinate set index 0-7. |
SPC_TEXTURE_COORDINATE1 | |
SPC_TEXTURE_COORDINATE2 | |
SPC_TEXTURE_COORDINATE3 | |
SPC_TEXTURE_COORDINATE4 | |
SPC_TEXTURE_COORDINATE5 | |
SPC_TEXTURE_COORDINATE6 | |
SPC_TEXTURE_COORDINATE7 | |
SPC_POINTSPRITE_COORDINATE | point sprite coordinates |
SPC_POINTSPRITE_SIZE | point sprite size |
SPC_CUSTOM_CONTENT_BEGIN | Reserved custom content range to be used by user custom shader extensions. |
SPC_CUSTOM_CONTENT_END |
Ogre::RTShader::Parameter::Parameter | ( | ) |
Ogre::RTShader::Parameter::Parameter | ( | GpuConstantType | type, |
const String & | name, | ||
const Semantic & | semantic, | ||
int | index, | ||
const Content & | content, | ||
size_t | size = 0 |
||
) |
Class constructor.
type | The type of this parameter. |
name | The name of this parameter. |
semantic | The semantic of this parameter. |
index | The index of this parameter. |
content | The content of this parameter. |
size |
|
inlinevirtual |
Class destructor.
|
inline |
Get the name of this parameter.
|
inline |
internal function for aliasing to GLSL builtins e.g. gl_Position
|
inline |
Get the type of this parameter.
|
inline |
Get the semantic of this parameter.
|
inline |
Get the index of this parameter.
|
inline |
Return the content of this parameter.
|
inlinevirtual |
Returns true if this instance is a ConstParameter otherwise false.
Reimplemented in Ogre::RTShader::ConstParameter< valueType >.
|
inlinevirtual |
Returns the string representation of this parameter.
Reimplemented in Ogre::RTShader::ConstParameter< valueType >.
|
inline |
Returns Whether this parameter is an array.
|
inline |
Returns the number of elements in the parameter (for arrays).
|
inline |
Sets the number of elements in the parameter (for arrays).
|
inline |
track whether this was used
|
inline |