OGRE  13.4
Object-Oriented Graphics Rendering Engine
Ogre::RTShader::LayeredBlending Class Reference

Texturing sub render state implementation of layered blending. More...

#include <OgreShaderExLayeredBlending.h>

+ Inheritance diagram for Ogre::RTShader::LayeredBlending:

Classes

struct  TextureBlend
 

Public Types

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
}
 

Public Member Functions

 LayeredBlending ()
 Class default constructor. More...
 
virtual void copyFrom (const SubRenderState &rhs)
 
BlendMode getBlendMode (unsigned short index) const
 Return the blend mode of the given texture unit index. More...
 
bool getSourceModifier (unsigned short index, SourceModifier &modType, int &customNum) const
 Returns the source modifier parameters for a given texture unit. More...
 
virtual const Ogre::StringgetType () const
 
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...
 
- Public Member Functions inherited from Ogre::RTShader::FFPTexturing
 FFPTexturing ()
 Class default constructor. More...
 
virtual int getExecutionOrder () const
 
virtual bool preAddToRenderState (const RenderState *renderState, Pass *srcPass, Pass *dstPass)
 
- Public Member Functions inherited from Ogre::RTShader::SubRenderState
 SubRenderState ()
 Class default constructor. More...
 
virtual ~SubRenderState ()
 Class destructor. More...
 
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...
 
SubRenderStateoperator= (const SubRenderState &rhs)
 Operator = declaration. More...
 
virtual void updateGpuProgramsParams (Renderable *rend, const Pass *pass, const AutoParamDataSource *source, const LightList *pLightList)
 Update GPU programs parameters before a rendering operation occurs. More...
 

Static Public Attributes

static String Type
 
- Static Public Attributes inherited from Ogre::RTShader::FFPTexturing
static String Type
 

Detailed Description

Texturing sub render state implementation of layered blending.

Derives from FFPTexturing class which derives from SubRenderState class.

Member Enumeration Documentation

◆ 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 

Constructor & Destructor Documentation

◆ LayeredBlending()

Ogre::RTShader::LayeredBlending::LayeredBlending ( )

Class default constructor.

Member Function Documentation

◆ 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
indexThe texture unit texture. Textures units (index-1) and (index) will be blended.
modeThe 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
indexTexture blend index
modTypeThe source modification type to use
customNumThe 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
indexTexture blend index
modTypeThe source modification type to use
customNumThe custom parameter number used to control the modification

◆ copyFrom()

virtual void Ogre::RTShader::LayeredBlending::copyFrom ( const SubRenderState rhs)
virtual

Member Data Documentation

◆ Type

String Ogre::RTShader::LayeredBlending::Type
static

The documentation for this class was generated from the following file: