Uniform parameter class. More...
#include <OgreShaderParameter.h>
Public Member Functions | |
UniformParameter (GpuConstantType type, const String &name, const Semantic &semantic, int index, const Content &content, uint16 variability, size_t size) | |
Class constructor. | |
UniformParameter (GpuProgramParameters::AutoConstantType autoType, Real fAutoConstantData, size_t size) | |
Class constructor. | |
UniformParameter (GpuProgramParameters::AutoConstantType autoType, Real fAutoConstantData, size_t size, GpuConstantType type) | |
Class constructor. | |
UniformParameter (GpuProgramParameters::AutoConstantType autoType, size_t nAutoConstantData, size_t size) | |
Class constructor. | |
UniformParameter (GpuProgramParameters::AutoConstantType autoType, size_t nAutoConstantData, size_t size, GpuConstantType type) | |
Class constructor. | |
void | bind (GpuProgramParametersSharedPtr paramsPtr) |
Bind this parameter to the corresponding GPU parameter. | |
size_t | getAutoConstantIntData () const |
Get auto constant int data of this parameter, in case it is auto constant parameter. | |
Real | getAutoConstantRealData () const |
Get auto constant real data of this parameter, in case it is auto constant parameter. | |
GpuProgramParameters::AutoConstantType | getAutoConstantType () const |
Return the auto constant type of this parameter. | |
Content | getContent () const |
Return the content of this parameter. | |
int | getIndex () const |
Get the index of this parameter. | |
const String & | getName () const |
Get the name of this parameter. | |
const Semantic & | getSemantic () const |
Get the semantic of this parameter. | |
size_t | getSize () const |
Returns the number of elements in the parameter (for arrays). | |
GpuConstantType | getType () const |
Get the type of this parameter. | |
uint16 | getVariability () const |
Return the variability of this parameter. | |
bool | isArray () const |
Returns Whether this parameter is an array. | |
bool | isAutoConstantIntParameter () const |
Return true if this parameter an auto constant with int data type, false otherwise. | |
bool | isAutoConstantParameter () const |
Return true if this parameter is an auto constant parameter, false otherwise. | |
bool | isAutoConstantRealParameter () const |
Return true if this parameter an auto constant with real data type, false otherwise. | |
virtual bool | isConstParameter () const |
Returns true if this instance is a ConstParameter otherwise false. | |
bool | isFloat () const |
Return true if this parameter is a floating point type, false otherwise. | |
bool | isSampler () const |
Return true if this parameter is a texture sampler type, false otherwise. | |
void | operator delete (void *ptr) |
void | operator delete (void *ptr, const char *, int, const char *) |
void | operator delete (void *ptr, void *) |
void | operator delete[] (void *ptr) |
void | operator delete[] (void *ptr, const char *, int, const char *) |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, const char *file, int line, const char *func) |
operator new, with debug line info | |
void * | operator new (size_t sz, void *ptr) |
placement operator new | |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, const char *file, int line, const char *func) |
array operator new, with debug line info | |
void | setGpuParameter (const ColourValue &val) |
Update the GPU parameter with the given value. | |
void | setGpuParameter (const double *val, size_t count, size_t multiple=4) |
Update the GPU parameter with the given value. | |
void | setGpuParameter (const float *val, size_t count, size_t multiple=4) |
Update the GPU parameter with the given value. | |
void | setGpuParameter (const int *val, size_t count, size_t multiple=4) |
Update the GPU parameter with the given value. | |
void | setGpuParameter (const Matrix4 &val) |
Update the GPU parameter with the given value. | |
void | setGpuParameter (const Vector2 &val) |
Update the GPU parameter with the given value. | |
void | setGpuParameter (const Vector3 &val) |
Update the GPU parameter with the given value. | |
void | setGpuParameter (const Vector4 &val) |
Update the GPU parameter with the given value. | |
void | setGpuParameter (int val) |
Update the GPU parameter with the given value. | |
void | setGpuParameter (Real val) |
Update the GPU parameter with the given value. | |
void | setSize (size_t size) |
Sets the number of elements in the parameter (for arrays). | |
virtual String | toString () const |
Returns the string representation of this parameter. | |
Uniform parameter class.
Allow fast access to GPU parameter updates.
Definition at line 376 of file OgreShaderParameter.h.
|
inherited |
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_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.
|
inherited |
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) |
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 426 of file OgreShaderParameter.h.
Real Ogre::RTShader::UniformParameter::getAutoConstantRealData | ( | ) | const |
Get auto constant real data of this parameter, in case it is auto constant parameter.
Definition at line 429 of file OgreShaderParameter.h.
GpuProgramParameters::AutoConstantType Ogre::RTShader::UniformParameter::getAutoConstantType | ( | ) | const |
Return the auto constant type of this parameter.
Definition at line 447 of file OgreShaderParameter.h.
|
inherited |
Return the content of this parameter.
Definition at line 335 of file OgreShaderParameter.h.
|
inherited |
Get the index of this parameter.
Definition at line 332 of file OgreShaderParameter.h.
Get the name of this parameter.
Definition at line 323 of file OgreShaderParameter.h.
Get the semantic of this parameter.
Definition at line 329 of file OgreShaderParameter.h.
|
inherited |
Returns the number of elements in the parameter (for arrays).
Definition at line 347 of file OgreShaderParameter.h.
|
inherited |
Get the type of this parameter.
Definition at line 326 of file OgreShaderParameter.h.
uint16 Ogre::RTShader::UniformParameter::getVariability | ( | ) | const |
Return the variability of this parameter.
Definition at line 450 of file OgreShaderParameter.h.
|
inherited |
Returns Whether this parameter is an array.
Definition at line 344 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 441 of file OgreShaderParameter.h.
bool Ogre::RTShader::UniformParameter::isAutoConstantParameter | ( | ) | const |
Return true if this parameter is an auto constant parameter, false otherwise.
Definition at line 438 of file OgreShaderParameter.h.
bool Ogre::RTShader::UniformParameter::isAutoConstantRealParameter | ( | ) | const |
Return true if this parameter an auto constant with real data type, false otherwise.
Definition at line 444 of file OgreShaderParameter.h.
Returns true if this instance is a ConstParameter otherwise false.
Reimplemented in Ogre::RTShader::ConstParameter< valueType >.
Definition at line 338 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.
Definition at line 96 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 108 of file OgreMemoryAllocatedObject.h.
Definition at line 102 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 113 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 119 of file OgreMemoryAllocatedObject.h.
Definition at line 73 of file OgreMemoryAllocatedObject.h.
|
inherited |
operator new, with debug line info
Definition at line 68 of file OgreMemoryAllocatedObject.h.
placement operator new
Definition at line 79 of file OgreMemoryAllocatedObject.h.
Definition at line 91 of file OgreMemoryAllocatedObject.h.
|
inherited |
array operator new, with debug line info
Definition at line 86 of file OgreMemoryAllocatedObject.h.
void Ogre::RTShader::UniformParameter::setGpuParameter | ( | const ColourValue & | val | ) |
Update the GPU parameter with the given value.
Definition at line 476 of file OgreShaderParameter.h.
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 530 of file OgreShaderParameter.h.
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 521 of file OgreShaderParameter.h.
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 539 of file OgreShaderParameter.h.
Update the GPU parameter with the given value.
Definition at line 512 of file OgreShaderParameter.h.
Update the GPU parameter with the given value.
Definition at line 485 of file OgreShaderParameter.h.
References Ogre::Vector2::ptr().
Update the GPU parameter with the given value.
Definition at line 494 of file OgreShaderParameter.h.
Update the GPU parameter with the given value.
Definition at line 503 of file OgreShaderParameter.h.
Update the GPU parameter with the given value.
Definition at line 458 of file OgreShaderParameter.h.
Update the GPU parameter with the given value.
Definition at line 467 of file OgreShaderParameter.h.
Sets the number of elements in the parameter (for arrays).
Definition at line 350 of file OgreShaderParameter.h.
Returns the string representation of this parameter.
Reimplemented in Ogre::RTShader::ConstParameter< valueType >.
Definition at line 341 of file OgreShaderParameter.h.
union { ... } Ogre::RTShader::UniformParameter |
size_t Ogre::RTShader::UniformParameter::mAutoConstantIntData |
Definition at line 556 of file OgreShaderParameter.h.
Real Ogre::RTShader::UniformParameter::mAutoConstantRealData |
Definition at line 558 of file OgreShaderParameter.h.
|
protected |
Definition at line 552 of file OgreShaderParameter.h.
|
protectedinherited |
Definition at line 363 of file OgreShaderParameter.h.
|
protectedinherited |
Definition at line 361 of file OgreShaderParameter.h.
|
protected |
Definition at line 551 of file OgreShaderParameter.h.
|
protected |
Definition at line 549 of file OgreShaderParameter.h.
|
protectedinherited |
Definition at line 355 of file OgreShaderParameter.h.
|
protected |
Definition at line 563 of file OgreShaderParameter.h.
|
protected |
Definition at line 565 of file OgreShaderParameter.h.
|
protectedinherited |
Definition at line 359 of file OgreShaderParameter.h.
|
protectedinherited |
Definition at line 365 of file OgreShaderParameter.h.
|
protectedinherited |
Definition at line 357 of file OgreShaderParameter.h.
|
protected |
Definition at line 561 of file OgreShaderParameter.h.
Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.