OGRE
1.9.0
|
Chain of compositor effects applying to one viewport. More...
#include <OgreCompositorChain.h>
Classes | |
class | RQListener |
Render queue listener used to set up rendering events. More... | |
Public Types | |
typedef VectorIterator< Instances > | InstanceIterator |
typedef vector< CompositorInstance * >::type | Instances |
Data types. | |
Static Public Attributes | |
static const size_t | BEST = 0 |
Identifier for best technique. | |
static const size_t | LAST = (size_t)-1 |
Identifier for "last" compositor in chain. | |
Protected Types | |
typedef vector< CompositorInstance::RenderSystemOperation * >::type | RenderSystemOperations |
Render System operations queued by last compile, these are created by this instance thus managed and deleted by it. | |
Protected Member Functions | |
void | clearCompiledState () |
Clear compiled state. | |
void | createOriginalScene () |
void | destroyOriginalScene () |
void | destroyResources (void) |
destroy internal resources | |
void | postTargetOperation (CompositorInstance::TargetOperation &op, Viewport *vp, Camera *cam) |
Restore a viewport, the camera and the scene after a rendering operation. | |
void | preTargetOperation (CompositorInstance::TargetOperation &op, Viewport *vp, Camera *cam) |
Prepare a viewport, the camera and the scene for a rendering operation. | |
Protected Attributes | |
bool | mAnyCompositorsEnabled |
Any compositors enabled? | |
CompositorInstance::CompiledState | mCompiledState |
Compiled state (updated with _compile) | |
bool | mDirty |
State needs recompile. | |
Instances | mInstances |
Postfilter instances in this chain. | |
unsigned int | mOldClearEveryFrameBuffers |
Old viewport settings. | |
bool | mOldFindVisibleObjects |
Store old find visible objects. | |
float | mOldLodBias |
Store old camera LOD bias. | |
String | mOldMaterialScheme |
Store old viewport material scheme. | |
bool | mOldShadowsEnabled |
Store old shadows enabled flag. | |
uint32 | mOldVisibilityMask |
Store old scene visibility mask. | |
CompositorInstance * | mOriginalScene |
Plainly renders the scene; implicit first compositor in the chain. | |
String | mOriginalSceneScheme |
RQListener | mOurListener |
CompositorInstance::TargetOperation | mOutputOperation |
RenderSystemOperations | mRenderSystemOperations |
Viewport * | mViewport |
Viewport affected by this CompositorChain. | |
Chain of compositor effects applying to one viewport.
Definition at line 48 of file OgreCompositorChain.h.
Definition at line 59 of file OgreCompositorChain.h.
Data types.
Definition at line 58 of file OgreCompositorChain.h.
|
protected |
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 181 of file OgreCompositorChain.h.
Ogre::CompositorChain::CompositorChain | ( | Viewport * | vp | ) |
|
virtual |
Another gcc warning here, which is no problem because RenderTargetListener is never used to delete an object.
void Ogre::CompositorChain::_compile | ( | ) |
Compile this Composition chain into a series of RenderTarget operations.
CompositorInstance * Ogre::CompositorChain::_getOriginalSceneCompositor | ( | void | ) |
Get the original scene compositor instance for this chain (internal use).
Definition at line 100 of file OgreCompositorChain.h.
void Ogre::CompositorChain::_markDirty | ( | ) |
Mark state as dirty, and to be recompiled next frame.
void Ogre::CompositorChain::_queuedOperation | ( | CompositorInstance::RenderSystemOperation * | op | ) |
Internal method for registering a queued operation for deletion later.
void Ogre::CompositorChain::_removeInstance | ( | CompositorInstance * | i | ) |
Remove a compositor by pointer.
This is internally used by CompositionTechnique to "weak" remove any instanced of a deleted technique.
CompositorInstance * Ogre::CompositorChain::addCompositor | ( | CompositorPtr | filter, |
size_t | addPosition = LAST , |
||
const String & | scheme = StringUtil::BLANK |
||
) |
Apply a compositor.
Initially, the filter is enabled.
filter | Filter to apply. |
addPosition | Position in filter chain to insert this filter at; defaults to the end (last applied filter). |
scheme | Scheme to use (blank means default). |
|
protected |
Clear compiled state.
|
protected |
|
protected |
CompositorInstance * Ogre::CompositorChain::getCompositor | ( | const String & | name | ) |
Get compositor instance by name.
Returns null if not found.
CompositorInstance * Ogre::CompositorChain::getCompositor | ( | size_t | index | ) |
Get compositor instance by position.
InstanceIterator Ogre::CompositorChain::getCompositors | ( | ) |
Get an iterator over the compositor instances.
The first compositor in this list is applied first, the last one is applied last.
CompositorInstance * Ogre::CompositorChain::getNextInstance | ( | CompositorInstance * | curr, |
bool | activeOnly = true |
||
) |
Get the next instance in this chain to the one specified.
size_t Ogre::CompositorChain::getNumCompositors | ( | ) |
Get the number of compositors.
CompositorInstance * Ogre::CompositorChain::getPreviousInstance | ( | CompositorInstance * | curr, |
bool | activeOnly = true |
||
) |
Get the previous instance in this chain to the one specified.
Viewport * Ogre::CompositorChain::getViewport | ( | ) |
Get viewport that is the target of this chain.
Definition at line 96 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 108 of file OgreMemoryAllocatedObject.h.
Definition at line 102 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 113 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 119 of file OgreMemoryAllocatedObject.h.
Definition at line 73 of file OgreMemoryAllocatedObject.h.
|
inherited |
operator new, with debug line info
Definition at line 68 of file OgreMemoryAllocatedObject.h.
placement operator new
Definition at line 79 of file OgreMemoryAllocatedObject.h.
Definition at line 91 of file OgreMemoryAllocatedObject.h.
|
inherited |
array operator new, with debug line info
Definition at line 86 of file OgreMemoryAllocatedObject.h.
|
virtual |
Reimplemented from Ogre::RenderTargetListener.
|
protected |
Restore a viewport, the camera and the scene after a rendering operation.
|
virtual |
Reimplemented from Ogre::RenderTargetListener.
|
virtual |
Reimplemented from Ogre::RenderTargetListener.
|
protected |
Prepare a viewport, the camera and the scene for a rendering operation.
|
virtual |
Reimplemented from Ogre::RenderTargetListener.
void Ogre::CompositorChain::removeAllCompositors | ( | ) |
Remove all compositors.
Remove a compositor.
position | Position in filter chain of filter to remove; defaults to the end (last applied filter) |
Enable or disable a compositor, by position.
Disabling a compositor stops it from rendering but does not free any resources. This can be more efficient than using removeCompositor and addCompositor in cases the filter is switched on and off a lot.
position | Position in filter chain of filter |
|
virtualinherited |
Called to notify listener that a Viewport has been added to the target in question.
Definition at line 134 of file OgreRenderTargetListener.h.
Reimplemented from Ogre::Viewport::Listener.
Reimplemented from Ogre::Viewport::Listener.
Reimplemented from Ogre::Viewport::Listener.
|
virtualinherited |
Called to notify listener that a Viewport has been removed from the target in question.
Definition at line 139 of file OgreRenderTargetListener.h.
Identifier for best technique.
Definition at line 64 of file OgreCompositorChain.h.
Identifier for "last" compositor in chain.
Definition at line 62 of file OgreCompositorChain.h.
|
protected |
Any compositors enabled?
Definition at line 171 of file OgreCompositorChain.h.
|
protected |
Compiled state (updated with _compile)
Definition at line 176 of file OgreCompositorChain.h.
|
protected |
State needs recompile.
Definition at line 169 of file OgreCompositorChain.h.
|
protected |
Postfilter instances in this chain.
Definition at line 166 of file OgreCompositorChain.h.
Old viewport settings.
Definition at line 231 of file OgreCompositorChain.h.
|
protected |
Store old find visible objects.
Definition at line 235 of file OgreCompositorChain.h.
|
protected |
Store old camera LOD bias.
Definition at line 237 of file OgreCompositorChain.h.
|
protected |
Store old viewport material scheme.
Definition at line 239 of file OgreCompositorChain.h.
|
protected |
Store old shadows enabled flag.
Definition at line 241 of file OgreCompositorChain.h.
|
protected |
Store old scene visibility mask.
Definition at line 233 of file OgreCompositorChain.h.
|
protected |
Plainly renders the scene; implicit first compositor in the chain.
Definition at line 163 of file OgreCompositorChain.h.
|
protected |
Definition at line 173 of file OgreCompositorChain.h.
|
protected |
Definition at line 229 of file OgreCompositorChain.h.
|
protected |
Definition at line 177 of file OgreCompositorChain.h.
|
protected |
Definition at line 182 of file OgreCompositorChain.h.
|
protected |
Viewport affected by this CompositorChain.
Definition at line 159 of file OgreCompositorChain.h.