95 virtual uint32 operator()(
const Pass* p)
const = 0;
232 Real mPointAttenuationCoeffs[3];
273 bool isProgrammable(
void)
const {
return mVertexProgramUsage || mFragmentProgramUsage || mGeometryProgramUsage ||
274 mTesselationHullProgramUsage || mTesselationDomainProgramUsage || mComputeProgramUsage; }
297 size_t calculateSize(
void)
const;
300 unsigned short getIndex(
void)
const {
return mIndex; }
306 void setName(
const String& name);
394 void setShininess(
Real val);
405 void setSelfIllumination(
Real red,
Real green,
Real blue);
413 setSelfIllumination(red, green, blue);
425 void setSelfIllumination(
const ColourValue& selfIllum);
433 setSelfIllumination(emissive);
445 Real getPointSize(
void)
const;
462 void setPointSize(
Real ps);
469 void setPointSpritesEnabled(
bool enabled);
474 bool getPointSpritesEnabled(
void)
const;
493 void setPointAttenuation(
bool enabled,
494 Real constant = 0.0f,
Real linear = 1.0f,
Real quadratic = 0.0f);
497 bool isPointAttenuationEnabled(
void)
const;
500 Real getPointAttenuationConstant(
void)
const;
502 Real getPointAttenuationLinear(
void)
const;
504 Real getPointAttenuationQuadratic(
void)
const;
507 void setPointMinSize(
Real min);
509 Real getPointMinSize(
void)
const;
513 void setPointMaxSize(
Real max);
517 Real getPointMaxSize(
void)
const;
533 const ColourValue& getSelfIllumination(
void)
const;
541 return getSelfIllumination();
546 Real getShininess(
void)
const;
595 unsigned short getTextureUnitStateIndex(
const TextureUnitState* state)
const;
609 void removeTextureUnitState(
unsigned short index);
613 void removeAllTextureUnitStates(
void);
619 return static_cast<unsigned short>(mTextureUnitStates.size());
713 bool hasSeparateSceneBlending()
const;
759 bool hasSeparateSceneBlendingOperations()
const;
768 bool isTransparent(
void)
const;
781 void setDepthCheckEnabled(
bool enabled);
787 bool getDepthCheckEnabled(
void)
const;
799 void setDepthWriteEnabled(
bool enabled);
805 bool getDepthWriteEnabled(
void)
const;
831 void setColourWriteEnabled(
bool enabled);
833 bool getColourWriteEnabled(
void)
const;
883 void setLightingEnabled(
bool enabled);
887 bool getLightingEnabled(
void)
const;
897 void setMaxSimultaneousLights(
unsigned short maxLights);
899 unsigned short getMaxSimultaneousLights(
void)
const;
911 void setStartLight(
unsigned short startLight);
913 unsigned short getStartLight(
void)
const;
916 void setLightMask(
uint32 mask);
918 uint32 getLightMask()
const;
947 mPolygonModeOverrideable =
override;
955 return mPolygonModeOverrideable;
990 Real expDensity = 0.001,
Real linearStart = 0.0,
Real linearEnd = 1.0 );
994 bool getFogOverride(
void)
const;
1000 FogMode getFogMode(
void)
const;
1010 Real getFogStart(
void)
const;
1016 Real getFogEnd(
void)
const;
1022 Real getFogDensity(
void)
const;
1043 void setDepthBias(
float constantBias,
float slopeScaleBias = 0.0f);
1046 float getDepthBiasConstant(
void)
const;
1048 float getDepthBiasSlopeScale(
void)
const;
1055 void setIterationDepthBias(
float biasPerIteration);
1059 float getIterationDepthBias()
const;
1070 void setAlphaRejectSettings(
CompareFunction func,
unsigned char value,
bool alphaToCoverageEnabled =
false);
1078 void setAlphaRejectValue(
unsigned char val);
1095 void setAlphaToCoverageEnabled(
bool enabled);
1113 void setTransparentSortingEnabled(
bool enabled);
1117 bool getTransparentSortingEnabled(
void)
const;
1128 void setTransparentSortingForced(
bool enabled);
1132 bool getTransparentSortingForced(
void)
const;
1176 void setIteratePerLight(
bool enabled,
1196 void setLightCountPerIteration(
unsigned short c);
1200 unsigned short getLightCountPerIteration(
void)
const;
1206 const String& getResourceGroup(
void)
const;
1224 void setVertexProgram(
const String& name,
bool resetParams =
true);
1233 const String& getVertexProgramName(
void)
const;
1269 void setShadowCasterVertexProgram(
const String& name);
1278 const String& getShadowCasterVertexProgramName(
void)
const;
1283 const GpuProgramPtr& getShadowCasterVertexProgram(
void)
const;
1314 void setShadowCasterFragmentProgram(
const String& name);
1323 const String& getShadowCasterFragmentProgramName(
void)
const;
1328 const GpuProgramPtr& getShadowCasterFragmentProgram(
void)
const;
1355 void setShadowReceiverVertexProgram(
const String& name);
1384 void setShadowReceiverFragmentProgram(
const String& name);
1394 const String& getShadowReceiverVertexProgramName(
void)
const;
1399 const GpuProgramPtr& getShadowReceiverVertexProgram(
void)
const;
1402 const String& getShadowReceiverFragmentProgramName(
void)
const;
1407 const GpuProgramPtr& getShadowReceiverFragmentProgram(
void)
const;
1425 void setFragmentProgram(
const String& name,
bool resetParams =
true);
1432 const String& getFragmentProgramName(
void)
const;
1454 void setGeometryProgram(
const String& name,
bool resetParams =
true);
1461 const String& getGeometryProgramName(
void)
const;
1478 Pass* _split(
unsigned short numUnits);
1481 void _notifyIndex(
unsigned short index);
1484 void _prepare(
void);
1486 void _unprepare(
void);
1492 bool isLoaded(
void)
const;
1502 void _dirtyHash(
void);
1509 void _recalculateHash(
void);
1511 void _notifyNeedsRecompile(
void);
1525 unsigned short _getTextureUnitWithContentTypeIndex(
1545 void setTextureAnisotropy(
unsigned int maxAniso);
1566 {
return msDirtyHashList; }
1570 {
return msPassGraveyard; }
1578 static void clearDirtyHashList(
void);
1581 static void processPendingPassUpdates(
void);
1584 void queueForDeletion(
void);
1588 bool isAmbientOnly(
void)
const;
1712 MIN_GPU_PROGRAM_CHANGE
1726 static void setHashFunction(BuiltinHashFunction builtin);
1747 static HashFunc* getBuiltinHashFunction(BuiltinHashFunction builtin);
1778 void setTesselationHullProgram(
const String& name,
bool resetParams =
true);
1785 const String& getTesselationHullProgramName(
void)
const;
1807 void setTesselationDomainProgram(
const String& name,
bool resetParams =
true);
1814 const String& getTesselationDomainProgramName(
void)
const;
1818 const GpuProgramPtr& getTesselationDomainProgram(
void)
const;
1836 void setComputeProgram(
const String& name,
bool resetParams =
true);
1843 const String& getComputeProgramName(
void)
const;