28 #ifndef __CompositorInstance_H__ 29 #define __CompositorInstance_H__ 92 virtual void notifyResourcesCreated(
bool forResizeOnly);
118 target(inTarget), currentQueueGroupID(0), visibilityMask(0xFFFFFFFF),
120 onlyInitial(false), hasBeenRendered(false), findVisibleObjects(false),
121 materialScheme(
MaterialManager::DEFAULT_SCHEME_NAME), shadowsEnabled(true)
170 void setEnabled(
bool value);
182 void setAlive(
bool value);
201 const String& getTextureInstanceName(
const String& name,
size_t mrtIndex);
231 virtual void _compileTargetOperations(CompiledState &compiledState);
268 void setScheme(
const String& schemeName,
bool reuseTextures =
true);
278 void notifyResized();
306 void _fireNotifyResourcesCreated(
bool forResizeOnly);
351 void createResources(
bool forResizeOnly);
355 void freeResources(
bool forResizeOnly,
bool clearReserveTextures);
367 const String &getSourceForTex(
const String &name,
size_t mrtIndex = 0);
374 String getMRTTexLocalName(
const String& baseName,
size_t attachment);
379 void deriveTextureRenderTargetOptions(
const String& texname,
380 bool *hwGammaWrite,
uint *fsaa,
String* fsaaHint);
383 void notifyCameraChanged(
Camera* camera);
394 #endif // __CompositorInstance_H__ A 'canvas' which can receive the results of a rendering operation.
CompositorChain * mChain
Composition chain of which this instance is part.
ReserveTextureMap mReserveTextures
Textures that are not currently in use, but that we want to keep for now, for example if we switch te...
vector< Listener * >::type Listeners
Vector of listeners.
RenderSystemOpPairs renderSystemOperations
RenderSystem operations to queue into the scene manager, by uint8.
RenderQueueBitSet renderQueues
Which renderqueues to render from scene.
An instance of a Compositor object for one Viewport.
Object representing one render to a RenderTarget or Viewport in the Ogre Composition framework...
Provides an interface to "listen in" to to render system operations executed by this CompositorInstan...
Operation setup for a RenderTarget (collected).
RenderTarget * target
Target.
const size_t RENDER_QUEUE_COUNT
map< String, TexturePtr >::type LocalTextureMap
Map from name->local texture.
Class for managing Material settings for Ogre.
map< String, MultiRenderTarget * >::type LocalMRTMap
Store a list of MRTs we've created.
String materialScheme
Which material scheme this op will use.
Compositor * mCompositor
Compositor of which this is an instance.
map< int, MaterialPtr >::type QuadMaterialMap
bool shadowsEnabled
Whether shadows will be enabled.
Base composition technique, can be subclassed in plugins.
int currentQueueGroupID
Current group ID.
Class representing a Compositor object.
std::map< K, V, P, A > type
bool getAlive() const
Get alive flag.
bool hasBeenRendered
"Has been rendered" flag; used in combination with onlyInitial to determine whether to skip this targ...
Defines the functionality of a 3D API.
vector< TargetOperation >::type CompiledState
std::bitset< RENDER_QUEUE_COUNT > RenderQueueBitSet
A set of render queues to either include or exclude certain render queues.
TargetOperation(RenderTarget *inTarget)
bool getEnabled() const
Get enabled flag.
Final possible render queue, don't exceed this.
A viewpoint from which the scene will be rendered.
Chain of compositor effects applying to one viewport.
LocalTextureMap mLocalTextures
Specific render system operation.
CompositorInstance * mPreviousInstance
Previous instance (set by chain).
std::pair< int, RenderSystemOperation * > RenderSystemOpPair
bool mAlive
Is this instance allocating resources?
uint32 visibilityMask
Scene visibility mask If this is 0, the scene is not rendered at all.
CompositionTechnique * mTechnique
Composition technique used by this instance.
Manages the organisation and rendering of a 'scene' i.e.
bool mEnabled
Is this instance enabled?
static const String BLANK
Constant blank string, useful for returning by ref where local does not exist.
vector< RenderSystemOpPair >::type RenderSystemOpPairs
Superclass for all objects that wish to use custom memory allocators when their new / delete operator...
bool findVisibleObjects
Whether this op needs to find visible scene objects or not.
map< CompositionTechnique::TextureDefinition *, TexturePtr >::type ReserveTextureMap
const String & getScheme() const
Returns the name of the scheme this compositor is using.