42 public Ogre::RenderTargetListener,
43 public Ogre::MaterialManager::Listener,
44 public Ogre::FrameListener
49 Ogre::Camera* cubeMapCamera;
50 Ogre::SceneNode* camNode;
51 Ogre::TexturePtr cubeMapTexture;
52 Ogre::RenderTarget* cubeMapTargets[6];
53 Ogre::MaterialPtr material;
54 Ogre::MaterialPtr materialTransparent;
55 Ogre::String cubeMapScheme;
56 Ogre::TexturePtr oldTexture;
57 std::string previousScheme;
58 unsigned int techIndex;
59 unsigned int passIndex;
60 unsigned int unitIndex;
65 bool needTextureUpdate;
79 void SetMaterial(
SMaterial* targetMaterial,
const int& targetTechnique,
const int& targetPass,
const int& targetTextureUnit);
83 void SetSize(
const unsigned int& newSize);
87 unsigned int GetSize();
91 void SetEnable(
const bool& newState);
102 void SetAutoUpdate(
const bool& newAutoUpdateValue);
107 bool GetAutoUpdate();
116 virtual void preRenderTargetUpdate(
const Ogre::RenderTargetEvent& evt);
120 virtual void postRenderTargetUpdate(
const Ogre::RenderTargetEvent& evt);
124 virtual Ogre::Technique* handleSchemeNotFound(
unsigned short schemeIndex,
const Ogre::String& schemeName, Ogre::Material* originalMaterial,
unsigned short lodIndex,
const Ogre::Renderable* rend);
128 virtual bool frameStarted(
const Ogre::FrameEvent& evt);
132 virtual bool frameEnded(
const Ogre::FrameEvent& evt);
136 virtual void windowResized(Ogre::RenderWindow* rw);
146 void SetTextureUnit();
150 void ResetTextureUnit();
154 void _CreateCubeMapTexture(
const unsigned int& newSize);
158 void _DeleteCubeMapTexture();
162 void EnableRendering();
166 void DisableRendering();