Texturing sub render state implementation of layered blending.
More...
#include <OgreShaderExLayeredBlending.h>
|
enum | BlendMode {
LB_Invalid = -1,
LB_FFPBlend,
LB_BlendNormal,
LB_BlendLighten,
LB_BlendDarken,
LB_BlendMultiply,
LB_BlendAverage,
LB_BlendAdd,
LB_BlendSubtract,
LB_BlendDifference,
LB_BlendNegation,
LB_BlendExclusion,
LB_BlendScreen,
LB_BlendOverlay,
LB_BlendSoftLight,
LB_BlendHardLight,
LB_BlendColorDodge,
LB_BlendColorBurn,
LB_BlendLinearDodge,
LB_BlendLinearBurn,
LB_BlendLinearLight,
LB_BlendVividLight,
LB_BlendPinLight,
LB_BlendHardMix,
LB_BlendReflect,
LB_BlendGlow,
LB_BlendPhoenix,
LB_BlendSaturation,
LB_BlendColor,
LB_BlendLuminosity,
LB_MaxBlendModes
} |
|
enum | SourceModifier {
SM_Invalid = -1,
SM_None,
SM_Source1Modulate,
SM_Source2Modulate,
SM_Source1InvModulate,
SM_Source2InvModulate,
SM_MaxSourceModifiers
} |
|
|
| LayeredBlending () |
| Class default constructor. More...
|
|
virtual void | copyFrom (const SubRenderState &rhs) |
|
virtual bool | createCpuSubPrograms (ProgramSet *programSet) |
| Create sub programs that represents this sub render state as part of a program set. More...
|
|
SubRenderStateAccessorPtr | getAccessor () |
| Return the accessor object to this sub render state. More...
|
|
SubRenderStateAccessorPtr | getAccessor () const |
| Return the accessor object to this sub render state. More...
|
|
BlendMode | getBlendMode (unsigned short index) const |
| Return the blend mode of the given texture unit index. More...
|
|
virtual int | getExecutionOrder () const |
|
bool | getSourceModifier (unsigned short index, SourceModifier &modType, int &customNum) const |
| Returns the source modifier parameters for a given texture unit. More...
|
|
virtual const Ogre::String & | getType () const |
|
virtual bool | preAddToRenderState (const RenderState *renderState, Pass *srcPass, Pass *dstPass) |
|
void | setBlendMode (unsigned short index, BlendMode mode) |
| Set the blend mode of the given texture unit layer with the previous layer. More...
|
|
void | setSourceModifier (unsigned short index, SourceModifier modType, int customNum) |
| Set the source modifier parameters for a given texture unit. More...
|
|
virtual void | updateGpuProgramsParams (Renderable *rend, Pass *pass, const AutoParamDataSource *source, const LightList *pLightList) |
|
Texturing sub render state implementation of layered blending.
Derives from FFPTexturing class which derives from SubRenderState class.
◆ BlendMode
Enumerator |
---|
LB_Invalid | |
LB_FFPBlend | |
LB_BlendNormal | |
LB_BlendLighten | |
LB_BlendDarken | |
LB_BlendMultiply | |
LB_BlendAverage | |
LB_BlendAdd | |
LB_BlendSubtract | |
LB_BlendDifference | |
LB_BlendNegation | |
LB_BlendExclusion | |
LB_BlendScreen | |
LB_BlendOverlay | |
LB_BlendSoftLight | |
LB_BlendHardLight | |
LB_BlendColorDodge | |
LB_BlendColorBurn | |
LB_BlendLinearDodge | |
LB_BlendLinearBurn | |
LB_BlendLinearLight | |
LB_BlendVividLight | |
LB_BlendPinLight | |
LB_BlendHardMix | |
LB_BlendReflect | |
LB_BlendGlow | |
LB_BlendPhoenix | |
LB_BlendSaturation | |
LB_BlendColor | |
LB_BlendLuminosity | |
LB_MaxBlendModes | |
◆ SourceModifier
Enumerator |
---|
SM_Invalid | |
SM_None | |
SM_Source1Modulate | |
SM_Source2Modulate | |
SM_Source1InvModulate | |
SM_Source2InvModulate | |
SM_MaxSourceModifiers | |
◆ LayeredBlending()
Ogre::RTShader::LayeredBlending::LayeredBlending |
( |
| ) |
|
Class default constructor.
◆ getType()
virtual const Ogre::String& Ogre::RTShader::LayeredBlending::getType |
( |
| ) |
const |
|
virtual |
◆ setBlendMode()
void Ogre::RTShader::LayeredBlending::setBlendMode |
( |
unsigned short |
index, |
|
|
BlendMode |
mode |
|
) |
| |
Set the blend mode of the given texture unit layer with the previous layer.
- Parameters
-
index | The texture unit texture. Textures units (index-1) and (index) will be blended. |
mode | The blend mode to apply. |
◆ getBlendMode()
BlendMode Ogre::RTShader::LayeredBlending::getBlendMode |
( |
unsigned short |
index | ) |
const |
Return the blend mode of the given texture unit index.
◆ setSourceModifier()
void Ogre::RTShader::LayeredBlending::setSourceModifier |
( |
unsigned short |
index, |
|
|
SourceModifier |
modType, |
|
|
int |
customNum |
|
) |
| |
Set the source modifier parameters for a given texture unit.
- Parameters
-
index | Texture blend index |
modType | The source modification type to use |
customNum | The custom parameter number used to control the modification |
◆ getSourceModifier()
bool Ogre::RTShader::LayeredBlending::getSourceModifier |
( |
unsigned short |
index, |
|
|
SourceModifier & |
modType, |
|
|
int & |
customNum |
|
) |
| const |
Returns the source modifier parameters for a given texture unit.
- Returns
- True if a valid modifier exist for the given texture unit
- Parameters
-
index | Texture blend index |
modType | The source modification type to use |
customNum | The custom parameter number used to control the modification |
◆ copyFrom()
virtual void Ogre::RTShader::LayeredBlending::copyFrom |
( |
const SubRenderState & |
rhs | ) |
|
|
virtual |
◆ getExecutionOrder()
virtual int Ogre::RTShader::FFPTexturing::getExecutionOrder |
( |
| ) |
const |
|
virtualinherited |
◆ updateGpuProgramsParams()
◆ preAddToRenderState()
virtual bool Ogre::RTShader::FFPTexturing::preAddToRenderState |
( |
const RenderState * |
renderState, |
|
|
Pass * |
srcPass, |
|
|
Pass * |
dstPass |
|
) |
| |
|
virtualinherited |
◆ AddTextureSampleWrapperInvocation()
Wraps a sampler with a SamplerData[x]D struct defined in FFPLib_Texturing.hlsl.
◆ GetSamplerWrapperParam()
Get a sampler wrapper type according to the sampler type.
◆ createCpuSubPrograms()
virtual bool Ogre::RTShader::SubRenderState::createCpuSubPrograms |
( |
ProgramSet * |
programSet | ) |
|
|
virtualinherited |
Create sub programs that represents this sub render state as part of a program set.
The given program set contains CPU programs that represents a vertex shader and pixel shader. One should use these program class API to create a representation of the sub state he wished to implement.
- Parameters
-
programSet | container class of CPU and GPU programs that this sub state will affect on. |
Reimplemented in Ogre::RTShader::FFPTransform.
◆ getAccessor() [1/2]
◆ getAccessor() [2/2]
◆ Type
String Ogre::RTShader::LayeredBlending::Type |
|
static |
The documentation for this class was generated from the following file: