Uniform parameter class. More...
#include <OgreShaderParameter.h>
Uniform parameter class.
Allow fast access to GPU parameter updates.
Definition at line 377 of file OgreShaderParameter.h.
enum Ogre::RTShader::Parameter::Content [inherited] |
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_CUSTOM_CONTENT_BEGIN |
Reserved custom content range to be used by user custom shader extensions. |
SPC_CUSTOM_CONTENT_END |
Definition at line 76 of file OgreShaderParameter.h.
enum Ogre::RTShader::Parameter::Semantic [inherited] |
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) |
Definition at line 53 of file OgreShaderParameter.h.
Ogre::RTShader::UniformParameter::UniformParameter | ( | GpuConstantType | type, |
const String & | name, | ||
const Semantic & | semantic, | ||
int | index, | ||
const Content & | content, | ||
uint16 | variability, | ||
size_t | size | ||
) |
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. |
variability | How this parameter varies (bitwise combination of GpuProgramVariability). |
size | number of elements in the parameter. |
Ogre::RTShader::UniformParameter::UniformParameter | ( | GpuProgramParameters::AutoConstantType | autoType, |
Real | fAutoConstantData, | ||
size_t | size | ||
) |
Class constructor.
autoType | The auto type of this parameter. |
fAutoConstantData | The real data for this auto constant parameter. |
size | number of elements in the parameter. |
Ogre::RTShader::UniformParameter::UniformParameter | ( | GpuProgramParameters::AutoConstantType | autoType, |
Real | fAutoConstantData, | ||
size_t | size, | ||
GpuConstantType | type | ||
) |
Class constructor.
autoType | The auto type of this parameter. |
fAutoConstantData | The real data for this auto constant parameter. |
size | number of elements in the parameter. |
type | The desired data type of this auto constant parameter. |
Ogre::RTShader::UniformParameter::UniformParameter | ( | GpuProgramParameters::AutoConstantType | autoType, |
size_t | nAutoConstantData, | ||
size_t | size | ||
) |
Class constructor.
autoType | The auto type of this parameter. |
nAutoConstantData | The int data for this auto constant parameter. |
size | number of elements in the parameter. |
Ogre::RTShader::UniformParameter::UniformParameter | ( | GpuProgramParameters::AutoConstantType | autoType, |
size_t | nAutoConstantData, | ||
size_t | size, | ||
GpuConstantType | type | ||
) |
Class constructor.
autoType | The auto type of this parameter. |
nAutoConstantData | The int data for this auto constant parameter. |
size | number of elements in the parameter. |
type | The desired data type of this auto constant parameter. |
void Ogre::RTShader::UniformParameter::bind | ( | GpuProgramParametersSharedPtr | paramsPtr | ) |
Bind this parameter to the corresponding GPU parameter.
size_t Ogre::RTShader::UniformParameter::getAutoConstantIntData | ( | ) | const |
Get auto constant int data of this parameter, in case it is auto constant parameter.
Definition at line 427 of file OgreShaderParameter.h.
References mAutoConstantIntData.
Get auto constant real data of this parameter, in case it is auto constant parameter.
Definition at line 430 of file OgreShaderParameter.h.
References mAutoConstantRealData.
GpuProgramParameters::AutoConstantType Ogre::RTShader::UniformParameter::getAutoConstantType | ( | ) | const |
Return the auto constant type of this parameter.
Definition at line 448 of file OgreShaderParameter.h.
References mAutoConstantType.
Content Ogre::RTShader::Parameter::getContent | ( | ) | const [inherited] |
Return the content of this parameter.
Definition at line 336 of file OgreShaderParameter.h.
int Ogre::RTShader::Parameter::getIndex | ( | ) | const [inherited] |
Get the index of this parameter.
Definition at line 333 of file OgreShaderParameter.h.
const String& Ogre::RTShader::Parameter::getName | ( | void | ) | const [inherited] |
Get the name of this parameter.
Definition at line 324 of file OgreShaderParameter.h.
const Semantic& Ogre::RTShader::Parameter::getSemantic | ( | ) | const [inherited] |
Get the semantic of this parameter.
Definition at line 330 of file OgreShaderParameter.h.
size_t Ogre::RTShader::Parameter::getSize | ( | ) | const [inherited] |
Returns the number of elements in the parameter (for arrays).
Definition at line 348 of file OgreShaderParameter.h.
GpuConstantType Ogre::RTShader::Parameter::getType | ( | void | ) | const [inherited] |
Get the type of this parameter.
Definition at line 327 of file OgreShaderParameter.h.
Return the variability of this parameter.
Definition at line 451 of file OgreShaderParameter.h.
References mVariability.
bool Ogre::RTShader::Parameter::isArray | ( | ) | const [inherited] |
Returns Whether this parameter is an array.
Definition at line 345 of file OgreShaderParameter.h.
bool Ogre::RTShader::UniformParameter::isAutoConstantIntParameter | ( | ) | const |
Return true if this parameter an auto constant with int data type, false otherwise.
Definition at line 442 of file OgreShaderParameter.h.
References mIsAutoConstantInt.
bool Ogre::RTShader::UniformParameter::isAutoConstantParameter | ( | ) | const |
Return true if this parameter is an auto constant parameter, false otherwise.
Definition at line 439 of file OgreShaderParameter.h.
References mIsAutoConstantInt, and mIsAutoConstantReal.
Return true if this parameter an auto constant with real data type, false otherwise.
Definition at line 445 of file OgreShaderParameter.h.
References mIsAutoConstantReal.
virtual bool Ogre::RTShader::Parameter::isConstParameter | ( | ) | const [virtual, inherited] |
Returns true if this instance is a ConstParameter otherwise false.
Reimplemented in Ogre::RTShader::ConstParameter< valueType >.
Definition at line 339 of file OgreShaderParameter.h.
bool Ogre::RTShader::UniformParameter::isFloat | ( | ) | const |
Return true if this parameter is a floating point type, false otherwise.
bool Ogre::RTShader::UniformParameter::isSampler | ( | ) | const |
Return true if this parameter is a texture sampler type, false otherwise.
void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr | ) | [inherited] |
Definition at line 95 of file OgreMemoryAllocatedObject.h.
void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr, |
void * | |||
) | [inherited] |
Definition at line 101 of file OgreMemoryAllocatedObject.h.
void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr, |
const char * | , | ||
int | , | ||
const char * | |||
) | [inherited] |
Definition at line 107 of file OgreMemoryAllocatedObject.h.
void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr | ) | [inherited] |
Definition at line 112 of file OgreMemoryAllocatedObject.h.
void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr, |
const char * | , | ||
int | , | ||
const char * | |||
) | [inherited] |
Definition at line 118 of file OgreMemoryAllocatedObject.h.
void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz, |
const char * | file, | ||
int | line, | ||
const char * | func | ||
) | [inherited] |
operator new, with debug line info
Definition at line 67 of file OgreMemoryAllocatedObject.h.
void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz | ) | [inherited] |
Definition at line 72 of file OgreMemoryAllocatedObject.h.
void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz, |
void * | ptr | ||
) | [inherited] |
placement operator new
Definition at line 78 of file OgreMemoryAllocatedObject.h.
void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz, |
const char * | file, | ||
int | line, | ||
const char * | func | ||
) | [inherited] |
array operator new, with debug line info
Definition at line 85 of file OgreMemoryAllocatedObject.h.
void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz | ) | [inherited] |
Definition at line 90 of file OgreMemoryAllocatedObject.h.
void Ogre::RTShader::UniformParameter::setGpuParameter | ( | int | val | ) |
Update the GPU parameter with the given value.
Definition at line 459 of file OgreShaderParameter.h.
References Ogre::GpuProgramParameters::_writeRawConstant(), mParamsPtr, and mPhysicalIndex.
Update the GPU parameter with the given value.
Definition at line 468 of file OgreShaderParameter.h.
References Ogre::GpuProgramParameters::_writeRawConstant(), mParamsPtr, and mPhysicalIndex.
void Ogre::RTShader::UniformParameter::setGpuParameter | ( | const ColourValue & | val | ) |
Update the GPU parameter with the given value.
Definition at line 477 of file OgreShaderParameter.h.
References Ogre::GpuProgramParameters::_writeRawConstant(), mParamsPtr, and mPhysicalIndex.
void Ogre::RTShader::UniformParameter::setGpuParameter | ( | const Vector2 & | val | ) |
Update the GPU parameter with the given value.
Definition at line 486 of file OgreShaderParameter.h.
References Ogre::GpuProgramParameters::_writeRawConstants(), mParamsPtr, mPhysicalIndex, and Ogre::Vector2::ptr().
void Ogre::RTShader::UniformParameter::setGpuParameter | ( | const Vector3 & | val | ) |
Update the GPU parameter with the given value.
Definition at line 495 of file OgreShaderParameter.h.
References Ogre::GpuProgramParameters::_writeRawConstant(), mParamsPtr, and mPhysicalIndex.
void Ogre::RTShader::UniformParameter::setGpuParameter | ( | const Vector4 & | val | ) |
Update the GPU parameter with the given value.
Definition at line 504 of file OgreShaderParameter.h.
References Ogre::GpuProgramParameters::_writeRawConstant(), mParamsPtr, and mPhysicalIndex.
void Ogre::RTShader::UniformParameter::setGpuParameter | ( | const Matrix4 & | val | ) |
Update the GPU parameter with the given value.
Definition at line 513 of file OgreShaderParameter.h.
References Ogre::GpuProgramParameters::_writeRawConstant(), mParamsPtr, and mPhysicalIndex.
void Ogre::RTShader::UniformParameter::setGpuParameter | ( | const float * | val, |
size_t | count, | ||
size_t | multiple = 4 |
||
) |
Update the GPU parameter with the given value.
Definition at line 522 of file OgreShaderParameter.h.
References Ogre::GpuProgramParameters::_writeRawConstants(), mParamsPtr, and mPhysicalIndex.
void Ogre::RTShader::UniformParameter::setGpuParameter | ( | const double * | val, |
size_t | count, | ||
size_t | multiple = 4 |
||
) |
Update the GPU parameter with the given value.
Definition at line 531 of file OgreShaderParameter.h.
References Ogre::GpuProgramParameters::_writeRawConstants(), mParamsPtr, and mPhysicalIndex.
void Ogre::RTShader::UniformParameter::setGpuParameter | ( | const int * | val, |
size_t | count, | ||
size_t | multiple = 4 |
||
) |
Update the GPU parameter with the given value.
Definition at line 540 of file OgreShaderParameter.h.
References Ogre::GpuProgramParameters::_writeRawConstants(), mParamsPtr, and mPhysicalIndex.
void Ogre::RTShader::Parameter::setSize | ( | size_t | size | ) | [inherited] |
Sets the number of elements in the parameter (for arrays).
Definition at line 351 of file OgreShaderParameter.h.
virtual String Ogre::RTShader::Parameter::toString | ( | ) | const [virtual, inherited] |
Returns the string representation of this parameter.
Reimplemented in Ogre::RTShader::ConstParameter< valueType >.
Definition at line 342 of file OgreShaderParameter.h.
union { ... } [protected] |
Definition at line 557 of file OgreShaderParameter.h.
Referenced by getAutoConstantIntData().
Definition at line 559 of file OgreShaderParameter.h.
Referenced by getAutoConstantRealData().
GpuProgramParameters::AutoConstantType Ogre::RTShader::UniformParameter::mAutoConstantType [protected] |
Definition at line 553 of file OgreShaderParameter.h.
Referenced by getAutoConstantType().
Content Ogre::RTShader::Parameter::mContent [protected, inherited] |
Definition at line 364 of file OgreShaderParameter.h.
int Ogre::RTShader::Parameter::mIndex [protected, inherited] |
Definition at line 362 of file OgreShaderParameter.h.
bool Ogre::RTShader::UniformParameter::mIsAutoConstantInt [protected] |
Definition at line 552 of file OgreShaderParameter.h.
Referenced by isAutoConstantIntParameter(), and isAutoConstantParameter().
bool Ogre::RTShader::UniformParameter::mIsAutoConstantReal [protected] |
Definition at line 550 of file OgreShaderParameter.h.
Referenced by isAutoConstantParameter(), and isAutoConstantRealParameter().
String Ogre::RTShader::Parameter::mName [protected, inherited] |
Definition at line 356 of file OgreShaderParameter.h.
Definition at line 564 of file OgreShaderParameter.h.
Referenced by setGpuParameter().
size_t Ogre::RTShader::UniformParameter::mPhysicalIndex [protected] |
Definition at line 566 of file OgreShaderParameter.h.
Referenced by setGpuParameter().
Semantic Ogre::RTShader::Parameter::mSemantic [protected, inherited] |
Definition at line 360 of file OgreShaderParameter.h.
size_t Ogre::RTShader::Parameter::mSize [protected, inherited] |
Definition at line 366 of file OgreShaderParameter.h.
GpuConstantType Ogre::RTShader::Parameter::mType [protected, inherited] |
Definition at line 358 of file OgreShaderParameter.h.
uint16 Ogre::RTShader::UniformParameter::mVariability [protected] |
Definition at line 562 of file OgreShaderParameter.h.
Referenced by getVariability().
Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Sun Sep 2 2012 07:28:06