#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 | _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< 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. | |
| 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 |
| 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 42 of file OgreCompositorInstance.h.
|
|
Definition at line 145 of file OgreCompositorInstance.h. |
|
|
Vector of listeners.
Definition at line 223 of file OgreCompositorInstance.h. |
|
|
Map from name->local texture.
Definition at line 219 of file OgreCompositorInstance.h. |
|
|
Definition at line 87 of file OgreCompositorInstance.h. |
|
|
Definition at line 88 of file OgreCompositorInstance.h. |
|
|
Definition at line 89 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.
|
|
|
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.
|
|
||||||||||||
|
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 261 of file OgreCompositorInstance.h. |
|
|
Composition chain of which this instance is part.
Definition at line 215 of file OgreCompositorInstance.h. |
|
|
Compositor of which this is an instance.
Definition at line 211 of file OgreCompositorInstance.h. |
|
|
Is this instance enabled?
Definition at line 217 of file OgreCompositorInstance.h. |
|
|
Definition at line 224 of file OgreCompositorInstance.h. |
|
|
Definition at line 220 of file OgreCompositorInstance.h. |
|
|
Previous instance (set by chain).
Definition at line 227 of file OgreCompositorInstance.h. |
|
|
Composition technique used by this instance.
Definition at line 213 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 Sep 30 10:51:09 2007