#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