27 #ifndef _ShaderRenderState_ 28 #define _ShaderRenderState_ 85 void setLightCount(
const int lightCount[3]);
95 void getLightCount(
int lightCount[3])
const;
125 friend class FFPRenderStateBuilder;
170 void sortSubRenderStates();
174 bool createCpuPrograms();
181 void destroyProgramSet();
195 void removeSubRenderStateInstance(
SubRenderState* subRenderState);
208 friend class FFPRenderStateBuilder;
RenderStateList::iterator RenderStateIterator
Abstract class defining the interface all renderable objects must implement.
Class defining a single pass of a Technique (of a Material), i.e.
This is the target render state.
This class is the base interface of sub part from a shader based rendering pipeline.
SubRenderStateList mSubRenderStateList
vector< SubRenderState * >::type SubRenderStateList
RenderStateList::const_iterator RenderStateConstIterator
Container class for shader based programs.
This is a container class for sub render state class.
void setLightCountAutoUpdate(bool autoUpdate)
Set the light count auto update state.
A singleton manager class that manages shader based programs.
bool getLightCountAutoUpdate() const
Return true if this render state override the light count.
ProgramSet * getProgramSet()
Return the program set of this render state.
bool mLightCountAutoUpdate
const SubRenderStateList & getTemplateSubRenderStateList() const
Get the list of the template sub render states composing this render state.
bool mSubRenderStateSortValid
This utility class is used to hold the information used to generate the matrices and other informatio...
vector< RenderState * >::type RenderStateList
Superclass for all objects that wish to use custom memory allocators when their new / delete operator...