ProcessedDynamicLightMaterial Class Reference

#include <processedDynamicLightMaterial.h>

Inheritance diagram for ProcessedDynamicLightMaterial:

Inheritance graph
[legend]
List of all members.

Detailed Description

This processed material class is used for dynamic lighting.

As such it contains only minimal modifications to the base ProcessedShaderMaterial class. Basically just sets the proper dynamic lighting features in addition to everything else we need.


Public Member Functions

void setDualLight (bool dualLight)
void setMask (bool mask)
void setDynamicLightingFeatures (sgLightInfo::sgFeatures feat)
 ProcessedDynamicLightMaterial (Material &mat)
bool isDualLight ()
bool isMask ()

Private Types

typedef ProcessedShaderMaterial Parent

Private Member Functions

virtual void _determineFeatures (U32 stageNum, GFXMaterialFeatureData &fd, const GFXMaterialFeatureData::FeatureListHandle &features)
 Fills in the GFXMaterialFeatureData for the given stage.
virtual void _initPassStateBlock (const Material::BlendOp blendOp, U32 numTex, const U32 texFlags[Material::MAX_TEX_PER_PASS], GFXStateBlockDesc &result)
 Does the base render state block setting, normally per pass.

Private Attributes

bool mIsDualLight
bool mHasMask
sgLightInfo::sgFeatures mDynamicLightingFeatures

Friends

class MatInstance


Member Typedef Documentation


Constructor & Destructor Documentation

ProcessedDynamicLightMaterial::ProcessedDynamicLightMaterial ( Material mat  ) 


Member Function Documentation

virtual void ProcessedDynamicLightMaterial::_determineFeatures ( U32  stageNum,
GFXMaterialFeatureData fd,
const GFXMaterialFeatureData::FeatureListHandle features 
) [private, virtual]

Fills in the GFXMaterialFeatureData for the given stage.

Reimplemented from ProcessedShaderMaterial.

virtual void ProcessedDynamicLightMaterial::_initPassStateBlock ( const Material::BlendOp  blendOp,
U32  numTex,
const U32  texFlags[Material::MAX_TEX_PER_PASS],
GFXStateBlockDesc result 
) [private, virtual]

Does the base render state block setting, normally per pass.

Reimplemented from ProcessedMaterial.

void ProcessedDynamicLightMaterial::setDualLight ( bool  dualLight  ) 

void ProcessedDynamicLightMaterial::setMask ( bool  mask  ) 

void ProcessedDynamicLightMaterial::setDynamicLightingFeatures ( sgLightInfo::sgFeatures  feat  ) 

bool ProcessedDynamicLightMaterial::isDualLight (  )  [inline]

bool ProcessedDynamicLightMaterial::isMask (  )  [inline]


Friends And Related Function Documentation

friend class MatInstance [friend]


Member Data Documentation