55 bool operator()(
const Ogre::ColourValue& a,
const Ogre::ColourValue& b)
const
57 return a.getAsBGRA() < b.getAsBGRA();
60 struct SubEntityInformations
62 std::string entityName;
64 std::string sceneManagerName;
65 Ogre::SubEntity* subEntity;
67 struct SceneManagerInformations
69 Ogre::FogMode fogMode;
70 Ogre::ColourValue fogColour;
71 Ogre::Real fogDensity;
75 const Ogre::ColourValue resetColour;
76 Ogre::ColourValue currentColour;
77 typedef std::map<Ogre::ColourValue, SubEntityInformations, ColourCompare> ColorIndexedSubEntitiesMap;
78 ColorIndexedSubEntitiesMap colorIndexedSubEntitiesMap;
79 typedef std::map<Ogre::Entity*, Ogre::uint8> PriorizedEntityMap;
80 PriorizedEntityMap priorizedEntityList;
81 typedef std::map<Ogre::SceneManager*, SceneManagerInformations> SceneManagerList;
82 SceneManagerList sceneManagerList;
83 typedef std::map<Ogre::Renderable*, Ogre::Technique*> ProcessedRenderables;
84 ProcessedRenderables processedRenderables;
85 Ogre::MaterialPtr materialPlainColour;
86 Ogre::MaterialPtr materialPlainColorForeground;
87 Ogre::MaterialPtr materialPlainColourSP;
88 Ogre::MaterialPtr materialPlainColorForegroundSP;
89 Ogre::MaterialPtr materialTransparent;
90 Ogre::MaterialPtr materialDots;
91 Ogre::MaterialPtr materialDotsSP;
105 virtual Ogre::Technique* handleSchemeNotFound(
unsigned short schemeIndex,
const Ogre::String& schemeName, Ogre::Material* originalMaterial,
unsigned short lodIndex,
const Ogre::Renderable* rend);
109 void ResetSwitcher();
113 void ResetPriorizedObject();
117 Ogre::SubEntity* GetSubEntity(
const Ogre::ColourValue& searchedColour);
122 void GetNextColour();