here is the patch file:
Code: Select all
diff --git a/OgreMain/include/Compositor/OgreTextureDefinition.h b/OgreMain/include/Compositor/OgreTextureDefinition.h
index 8b7a91c0a..18c1b729d 100644
--- a/OgreMain/include/Compositor/OgreTextureDefinition.h
+++ b/OgreMain/include/Compositor/OgreTextureDefinition.h
@@ -320,6 +320,8 @@ namespace Ogre
RenderTargetViewDef* addRenderTextureView( IdString name );
const RenderTargetViewDef* getRenderTargetViewDef( IdString name ) const;
RenderTargetViewDef* getRenderTargetViewDefNonConstNoThrow( IdString name );
+ void removeRenderTextureView( IdString name );
+ void removeAllRenderTextureViews( void );
/** Utility function to create the textures based on a given set of
texture definitions and put them in a container.
diff --git a/OgreMain/src/Compositor/OgreTextureDefinition.cpp b/OgreMain/src/Compositor/OgreTextureDefinition.cpp
index 1c9f25cd3..d5a84f4b0 100644
--- a/OgreMain/src/Compositor/OgreTextureDefinition.cpp
+++ b/OgreMain/src/Compositor/OgreTextureDefinition.cpp
@@ -269,6 +269,19 @@ namespace Ogre
return retVal;
}
//-----------------------------------------------------------------------------------
+ void TextureDefinitionBase::removeRenderTextureView( IdString name )
+ {
+ RenderTargetViewDefMap::iterator itor = mLocalRtvs.find(name);
+ if (itor != mLocalRtvs.end())
+ mLocalRtvs.erase(itor);
+ }
+ //-----------------------------------------------------------------------------------
+ void TextureDefinitionBase::removeAllRenderTextureViews(void)
+ {
+ mLocalRtvs.clear();
+ }
+ //-----------------------------------------------------------------------------------
void TextureDefinitionBase::createTextures( const TextureDefinitionVec &textureDefs,
CompositorChannelVec &inOutTexContainer,
IdType id,