SO3Engine
|
#include <SO3ShaderGenerator.h>
Public Types | |
enum | ShaderType { ShaderGeneratorVP , ShaderGeneratorFP , ShaderGeneratorRTSS } |
enum | ShaderMapType { MAP_DUMMY = 1 , MAP_AMBIENT = 2 , MAP_DIFFUSE = 4 , MAP_BUMP = 8 , MAP_NORMAL = 16 , MAP_SPECULAR = 32 , MAP_SHININESS = 64 , MAP_EMISSIVE = 128 , MAP_REFLECTION = 256 , MAP_FRESNEL = 512 , MAP_REFMASK = 1024 , MAP_OPACITY = 2048 , MAP_ROUGHNESS = 4096 } |
typedef std::list< Ogre::GpuProgramPtr > | GeneratedShaders |
Public Member Functions | |
SShaderGenerator (Ogre::Technique *, Ogre::Pass *pass, ShaderType type, bool ignoreSlicePlane=false) | |
~SShaderGenerator () | |
std::string | GetShaderName () |
bool | IsUvAnimated (int uvindex) |
bool | IsAlphaRejected () |
int | GetConfig () |
virtual void | ComputeShaderCode () |
virtual std::string | GetUniformParams () |
virtual std::string | GetProgram () |
virtual void | ApplyShader () |
Static Public Member Functions | |
static void | Reset () |
Static Public Attributes | |
static GeneratedShaders | mGeneratedShaders |
Protected Attributes | |
ShaderType | mType |
Ogre::Pass * | mPass |
Ogre::Technique * | mTechnique |
int | mConfig |
std::string | mShaderName |
std::vector< ShaderMapType > | mTexTypes |
std::vector< unsigned int > | mTexUnits |
std::vector< unsigned int > | mSortedTexUnits |
std::vector< bool > | mAnimatedUv |
std::vector< bool > | mCubeUv |
std::vector< bool > | mSortedCubeUv |
std::stringstream | mSource |
std::string | mParams |
std::string | mProgram |
float | mRefTexCoef |
bool | mHighProfile |
bool | mNotLight |
bool | mUseVertexColor |
bool | mIgnoreSlicePlane |
bool | mUseAlphaRejection |
unsigned int | mNbLights |
Detailed Description
Definition at line 41 of file SO3ShaderGenerator.h.
Member Typedef Documentation
◆ GeneratedShaders
typedef std::list<Ogre::GpuProgramPtr> SO3::SShaderGenerator::GeneratedShaders |
Definition at line 44 of file SO3ShaderGenerator.h.
Member Enumeration Documentation
◆ ShaderMapType
Enumerator | |
---|---|
MAP_DUMMY | |
MAP_AMBIENT | |
MAP_DIFFUSE | |
MAP_BUMP | |
MAP_NORMAL | |
MAP_SPECULAR | |
MAP_SHININESS | |
MAP_EMISSIVE | |
MAP_REFLECTION | |
MAP_FRESNEL | |
MAP_REFMASK | |
MAP_OPACITY | |
MAP_ROUGHNESS |
Definition at line 65 of file SO3ShaderGenerator.h.
◆ ShaderType
Enumerator | |
---|---|
ShaderGeneratorVP | |
ShaderGeneratorFP | |
ShaderGeneratorRTSS |
Definition at line 58 of file SO3ShaderGenerator.h.
Constructor & Destructor Documentation
◆ SShaderGenerator()
SO3::SShaderGenerator::SShaderGenerator | ( | Ogre::Technique * | technique, |
Ogre::Pass * | pass, | ||
ShaderType | type, | ||
bool | ignoreSlicePlane = false |
||
) |
Definition at line 23 of file SO3ShaderGenerator.cpp.
◆ ~SShaderGenerator()
SO3::SShaderGenerator::~SShaderGenerator | ( | ) |
Definition at line 45 of file SO3ShaderGenerator.cpp.
Member Function Documentation
◆ ApplyShader()
|
virtual |
Reimplemented in SO3::SShaderGeneratorCG, SO3::SShaderGeneratorGLES, SO3::SShaderGeneratorGLSL, SO3::SShaderGeneratorHLSL, and SO3::SShaderGeneratorUnified.
Definition at line 705 of file SO3ShaderGenerator.cpp.
◆ ComputeShaderCode()
|
virtual |
Reimplemented in SO3::SShaderGeneratorCG, SO3::SShaderGeneratorGLES, SO3::SShaderGeneratorGLSL, SO3::SShaderGeneratorHLSL, and SO3::SShaderGeneratorUnified.
Definition at line 690 of file SO3ShaderGenerator.cpp.
◆ GetConfig()
int SO3::SShaderGenerator::GetConfig | ( | ) |
Definition at line 50 of file SO3ShaderGenerator.cpp.
◆ GetProgram()
|
virtual |
Reimplemented in SO3::SShaderGeneratorCG, SO3::SShaderGeneratorGLES, SO3::SShaderGeneratorGLSL, SO3::SShaderGeneratorHLSL, and SO3::SShaderGeneratorUnified.
Definition at line 700 of file SO3ShaderGenerator.cpp.
◆ GetShaderName()
std::string SO3::SShaderGenerator::GetShaderName | ( | ) |
Definition at line 669 of file SO3ShaderGenerator.cpp.
◆ GetUniformParams()
|
virtual |
Reimplemented in SO3::SShaderGeneratorCG, SO3::SShaderGeneratorGLES, SO3::SShaderGeneratorGLSL, SO3::SShaderGeneratorHLSL, and SO3::SShaderGeneratorUnified.
Definition at line 695 of file SO3ShaderGenerator.cpp.
◆ IsAlphaRejected()
bool SO3::SShaderGenerator::IsAlphaRejected | ( | ) |
Definition at line 685 of file SO3ShaderGenerator.cpp.
◆ IsUvAnimated()
bool SO3::SShaderGenerator::IsUvAnimated | ( | int | uvindex | ) |
Definition at line 674 of file SO3ShaderGenerator.cpp.
◆ Reset()
|
inlinestatic |
Definition at line 47 of file SO3ShaderGenerator.h.
Member Data Documentation
◆ mAnimatedUv
|
protected |
Definition at line 92 of file SO3ShaderGenerator.h.
◆ mConfig
|
protected |
Definition at line 87 of file SO3ShaderGenerator.h.
◆ mCubeUv
|
protected |
Definition at line 93 of file SO3ShaderGenerator.h.
◆ mGeneratedShaders
|
static |
Definition at line 45 of file SO3ShaderGenerator.h.
◆ mHighProfile
|
protected |
Definition at line 99 of file SO3ShaderGenerator.h.
◆ mIgnoreSlicePlane
|
protected |
Definition at line 102 of file SO3ShaderGenerator.h.
◆ mNbLights
|
protected |
Definition at line 104 of file SO3ShaderGenerator.h.
◆ mNotLight
|
protected |
Definition at line 100 of file SO3ShaderGenerator.h.
◆ mParams
|
protected |
Definition at line 96 of file SO3ShaderGenerator.h.
◆ mPass
|
protected |
Definition at line 85 of file SO3ShaderGenerator.h.
◆ mProgram
|
protected |
Definition at line 97 of file SO3ShaderGenerator.h.
◆ mRefTexCoef
|
protected |
Definition at line 98 of file SO3ShaderGenerator.h.
◆ mShaderName
|
protected |
Definition at line 88 of file SO3ShaderGenerator.h.
◆ mSortedCubeUv
|
protected |
Definition at line 94 of file SO3ShaderGenerator.h.
◆ mSortedTexUnits
|
protected |
Definition at line 91 of file SO3ShaderGenerator.h.
◆ mSource
|
protected |
Definition at line 95 of file SO3ShaderGenerator.h.
◆ mTechnique
|
protected |
Definition at line 86 of file SO3ShaderGenerator.h.
◆ mTexTypes
|
protected |
Definition at line 89 of file SO3ShaderGenerator.h.
◆ mTexUnits
|
protected |
Definition at line 90 of file SO3ShaderGenerator.h.
◆ mType
|
protected |
Definition at line 84 of file SO3ShaderGenerator.h.
◆ mUseAlphaRejection
|
protected |
Definition at line 103 of file SO3ShaderGenerator.h.
◆ mUseVertexColor
|
protected |
Definition at line 101 of file SO3ShaderGenerator.h.
The documentation for this class was generated from the following files:
- include/SO3Material/SO3ShaderGenerator.h
- src/SO3Material/SO3ShaderGenerator.cpp
Generated by 1.9.8