#include <OgreCompositorInstance.h>
Public Types | |
typedef std::map< int, MaterialPtr > | QuadMaterialMap |
typedef std::pair< int, RenderSystemOperation * > | RenderSystemOpPair |
typedef std::vector< RenderSystemOpPair > | RenderSystemOpPairs |
typedef std::vector< TargetOperation > | CompiledState |
Public Member Functions | |
CompositorInstance (Compositor *filter, CompositionTechnique *technique, CompositorChain *chain) | |
virtual | ~CompositorInstance () |
void | setEnabled (bool value) |
Set enabled flag. | |
bool | getEnabled () |
Get enabled flag. | |
const String & | getTextureInstanceName (const String &name) |
Get the instance name for a local texture. | |
virtual void | _prepareForCompilation () |
Prepare this instance for re-compilation. | |
virtual void | _compileTargetOperations (CompiledState &compiledState) |
Recursively collect target states (except for final Pass). | |
virtual void | _compileOutputOperation (TargetOperation &finalState) |
Compile the final (output) operation. | |
Compositor * | getCompositor () |
Get Compositor of which this is an instance. | |
CompositionTechnique * | getTechnique () |
Get CompositionTechnique used by this instance. | |
CompositorChain * | getChain () |
Get Chain that this instance is part of. | |
void | addListener (Listener *l) |
Add a listener. | |
void | removeListener (Listener *l) |
Remove a listener. | |
void | _fireNotifyMaterialSetup (uint32 pass_id, MaterialPtr &mat) |
Notify listeners of a material compilation. | |
void | _fireNotifyMaterialRender (uint32 pass_id, MaterialPtr &mat) |
Notify listeners of a material render. | |
Private Types | |
typedef std::map< String, TexturePtr > | LocalTextureMap |
Map from name->local texture. | |
typedef std::vector< RenderSystemOperation * > | RenderSystemOperations |
Render System operations queued by last compile, these are created by this instance thus managed and deleted by it. | |
typedef std::vector< Listener * > | Listeners |
Vector of listeners. | |
Private Member Functions | |
virtual void | collectPasses (TargetOperation &finalState, CompositionTargetPass *target) |
Collect rendering passes. | |
MaterialPtr | createLocalMaterial () |
Create a local dummy material with one technique but no passes. | |
void | createResources () |
Create local rendertextures and other resources. | |
void | freeResources () |
Destroy local rendertextures and other resources. | |
void | clearCompilationState () |
Destroy locally queued RenderTarget operations. | |
RenderTarget * | getTargetForTex (const String &name) |
Get RenderTarget for a named local texture. | |
const String & | getSourceForTex (const String &name) |
Get source texture name for a named local texture. | |
void | queueRenderSystemOp (TargetOperation &finalState, RenderSystemOperation *op) |
Queue a render system operation. | |
Private Attributes | |
Compositor * | mCompositor |
Compositor of which this is an instance. | |
CompositionTechnique * | mTechnique |
Composition technique used by this instance. | |
CompositorChain * | mChain |
Composition chain of which this instance is part. | |
bool | mEnabled |
Is this instance enabled? | |
LocalTextureMap | mLocalTextures |
RenderSystemOperations | mRenderSystemOperations |
Listeners | mListeners |
CompositorInstance * | mPreviousInstance |
Previous instance (set by chain). | |
Friends | |
class | CompositorChain |
Classes | |
class | Listener |
Provides an interface to "listen in" to to render system operations executed by this CompositorInstance. More... | |
class | RenderSystemOperation |
Specific render system operation. More... | |
class | TargetOperation |
Operation setup for a RenderTarget (collected). More... |
It is part of the CompositorChain for a Viewport.
Definition at line 38 of file OgreCompositorInstance.h.
|
Definition at line 138 of file OgreCompositorInstance.h. |
|
Vector of listeners.
Definition at line 226 of file OgreCompositorInstance.h. |
|
Map from name->local texture.
Definition at line 216 of file OgreCompositorInstance.h. |
|
Definition at line 83 of file OgreCompositorInstance.h. |
|
Render System operations queued by last compile, these are created by this instance thus managed and deleted by it. The list is cleared with clearCompilationState() Definition at line 222 of file OgreCompositorInstance.h. |
|
Definition at line 84 of file OgreCompositorInstance.h. |
|
Definition at line 85 of file OgreCompositorInstance.h. |
|
|
|
|
|
Compile the final (output) operation. This is done seperately because this is combined with the input in chained filters. |
|
Recursively collect target states (except for final Pass).
|
|
Notify listeners of a material render.
|
|
Notify listeners of a material compilation.
|
|
Prepare this instance for re-compilation. Clear all state that has been set by the last compile. |
|
Add a listener. Listeners provide an interface to "listen in" to to render system operations executed by this CompositorInstance so that materials can be programmatically set up.
|
|
Destroy locally queued RenderTarget operations.
|
|
Collect rendering passes. Here, passes are converted into render target operations and queued with queueRenderSystemOp. |
|
Create a local dummy material with one technique but no passes. The material is detached from the Material Manager to make sure it is destroyed when going out of scope. |
|
Create local rendertextures and other resources. Builds mLocalTextures. |
|
Destroy local rendertextures and other resources.
|
|
Get Chain that this instance is part of.
|
|
Get Compositor of which this is an instance.
|
|
Get enabled flag.
|
|
Get source texture name for a named local texture.
|
|
Get RenderTarget for a named local texture.
|
|
Get CompositionTechnique used by this instance.
|
|
Get the instance name for a local texture.
|
|
Queue a render system operation.
|
|
Remove a listener.
|
|
Set enabled flag. The compositor instance will only render if it is enabled, otherwise it is pass-through. |
|
Definition at line 268 of file OgreCompositorInstance.h. |
|
Composition chain of which this instance is part.
Definition at line 212 of file OgreCompositorInstance.h. |
|
Compositor of which this is an instance.
Definition at line 208 of file OgreCompositorInstance.h. |
|
Is this instance enabled?
Definition at line 214 of file OgreCompositorInstance.h. |
|
Definition at line 227 of file OgreCompositorInstance.h. |
|
Definition at line 217 of file OgreCompositorInstance.h. |
|
Previous instance (set by chain).
Definition at line 230 of file OgreCompositorInstance.h. |
|
Definition at line 223 of file OgreCompositorInstance.h. |
|
Composition technique used by this instance.
Definition at line 210 of file OgreCompositorInstance.h. |
Copyright © 2000-2005 by The OGRE Team
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Jul 23 10:06:01 2006