OGRE 2.1
Object-Oriented Graphics Rendering Engine
Loading...
Searching...
No Matches
Ogre::CompositorPassDef Class Reference

Interface to abstract all types of pass definitions (. More...

#include <OgreCompositorPassDef.h>

+ Inheritance diagram for Ogre::CompositorPassDef:

Classes

struct  UavDependency
 

Public Types

typedef vector< UavDependency >::type UavDependencyVec
 

Public Member Functions

 CompositorPassDef (CompositorPassType passType, CompositorTargetDef *parentTargetDef)
 
virtual ~CompositorPassDef ()
 
const CompositorTargetDefgetParentTargetDef (void) const
 
uint32 getRtIndex (void) const
 
CompositorPassType getType () const
 
void operator delete (void *ptr)
 
void operator delete (void *ptr, const char *, int, const char *)
 
void operator delete (void *ptr, void *)
 
void operator delete[] (void *ptr)
 
void operator delete[] (void *ptr, const char *, int, const char *)
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, const char *file, int line, const char *func)
 operator new, with debug line info
 
voidoperator new (size_t sz, void *ptr)
 placement operator new
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, const char *file, int line, const char *func)
 array operator new, with debug line info
 

Public Attributes

bool mBeginRtUpdate
 True if a previous pass doesn't alter the contents of the same render target we do TODO: Fill this automatically.
 
bool mColourWrite
 When false will not really bind the RenderTarget for rendering and use a null colour buffer instead.
 
bool mEndRtUpdate
 End if we're the last consecutive pass to alter the contents of the same render target.
 
uint8 mExecutionMask
 
IdStringVec mExposedTextures
 
uint32 mIdentifier
 Custom value in case there's a listener attached (to identify the pass)
 
bool mIncludeOverlays
 TODO: Refactor OgreOverlay to remove this design atrocity.
 
uint32 mNumInitialPasses
 Number of times to perform the pass before stopping. -1 to never stop.
 
String mProfilingId
 
bool mReadOnlyDepth
 
bool mReadOnlyStencil
 
bool mShadowMapFullViewport
 Only used if mShadowMapIdx is valid (if pass is owned by Shadow Nodes).
 
uint32 mShadowMapIdx
 Shadow map index it belongs to (only filled in passes owned by Shadow Nodes)
 
UavDependencyVec mUavDependencies
 
uint8 mViewportModifierMask
 
float mVpHeight
 
float mVpLeft
 Viewport's region to draw.
 
float mVpScissorHeight
 
float mVpScissorLeft
 
float mVpScissorTop
 
float mVpScissorWidth
 
float mVpTop
 
float mVpWidth
 

Detailed Description

Interface to abstract all types of pass definitions (.

See also
CompositorPassType): PASS_SCENE (@See CompositorPassSceneDef) PASS_QUAD (@See CompositorPassQuadDef) PASS_CLEAR (@See CompositorPassClearDef) PASS_STENCIL (@See CompositorPassStencilDef) PASS_DEPTHCOPY (@See CompositorPassDepthCopy) PASS_UAV (@See CompositorPassUavDef) PASS_COMPUTE (@See CompositorPassComputeDef) PASS_MIPMAP (@See CompositorPassMipmapDef) This class doesn't do much on its own. See the derived types for more information A definition is shared by all pass instantiations (i.e. Five CompositorPassScene can share the same CompositorPassSceneDef) and are assumed to remain const throughout their lifetime.
Modifying a definition while there are active instantiations is undefined. Some implementations may see the change (eg. changing CompositorPassSceneDef::mFirstRQ) immediately while not see others (eg. changing CompositorPassSceneDef::mCameraName) Also crashes could happen depending on the changes being made.

Member Typedef Documentation

◆ UavDependencyVec

Constructor & Destructor Documentation

◆ CompositorPassDef()

Ogre::CompositorPassDef::CompositorPassDef ( CompositorPassType  passType,
CompositorTargetDef parentTargetDef 
)
inline

◆ ~CompositorPassDef()

virtual Ogre::CompositorPassDef::~CompositorPassDef ( )
inlinevirtual

Member Function Documentation

◆ getParentTargetDef()

const CompositorTargetDef * Ogre::CompositorPassDef::getParentTargetDef ( void  ) const

◆ getRtIndex()

uint32 Ogre::CompositorPassDef::getRtIndex ( void  ) const

◆ getType()

CompositorPassType Ogre::CompositorPassDef::getType ( ) const
inline

◆ operator delete() [1/3]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void ptr)
inlineinherited

◆ operator delete() [2/3]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void ptr,
const char ,
int  ,
const char  
)
inlineinherited

◆ operator delete() [3/3]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void ptr,
void  
)
inlineinherited

◆ operator delete[]() [1/2]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete[] ( void ptr)
inlineinherited

◆ operator delete[]() [2/2]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete[] ( void ptr,
const char ,
int  ,
const char  
)
inlineinherited

◆ operator new() [1/3]

template<class Alloc >
void * Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz)
inlineinherited

◆ operator new() [2/3]

template<class Alloc >
void * Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz,
const char file,
int  line,
const char func 
)
inlineinherited

operator new, with debug line info

◆ operator new() [3/3]

template<class Alloc >
void * Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz,
void ptr 
)
inlineinherited

placement operator new

◆ operator new[]() [1/2]

template<class Alloc >
void * Ogre::AllocatedObject< Alloc >::operator new[] ( size_t  sz)
inlineinherited

◆ operator new[]() [2/2]

template<class Alloc >
void * Ogre::AllocatedObject< Alloc >::operator new[] ( size_t  sz,
const char file,
int  line,
const char func 
)
inlineinherited

array operator new, with debug line info

Member Data Documentation

◆ mBeginRtUpdate

bool Ogre::CompositorPassDef::mBeginRtUpdate

True if a previous pass doesn't alter the contents of the same render target we do TODO: Fill this automatically.

◆ mColourWrite

bool Ogre::CompositorPassDef::mColourWrite

When false will not really bind the RenderTarget for rendering and use a null colour buffer instead.

Useful for depth prepass, or if the RTT is actually an UAV. Some passes may ignore this setting (e.g. Clear passes)

◆ mEndRtUpdate

bool Ogre::CompositorPassDef::mEndRtUpdate

End if we're the last consecutive pass to alter the contents of the same render target.

◆ mExecutionMask

uint8 Ogre::CompositorPassDef::mExecutionMask

◆ mExposedTextures

IdStringVec Ogre::CompositorPassDef::mExposedTextures

◆ mIdentifier

uint32 Ogre::CompositorPassDef::mIdentifier

Custom value in case there's a listener attached (to identify the pass)

◆ mIncludeOverlays

bool Ogre::CompositorPassDef::mIncludeOverlays

TODO: Refactor OgreOverlay to remove this design atrocity.

A custom overlay pass is a better alternative (or just use their own RQ)

◆ mNumInitialPasses

uint32 Ogre::CompositorPassDef::mNumInitialPasses

Number of times to perform the pass before stopping. -1 to never stop.

◆ mProfilingId

String Ogre::CompositorPassDef::mProfilingId

◆ mReadOnlyDepth

bool Ogre::CompositorPassDef::mReadOnlyDepth

◆ mReadOnlyStencil

bool Ogre::CompositorPassDef::mReadOnlyStencil

◆ mShadowMapFullViewport

bool Ogre::CompositorPassDef::mShadowMapFullViewport

Only used if mShadowMapIdx is valid (if pass is owned by Shadow Nodes).

If true, we won't force the viewport to fit the region of the UV atlas on the texture, and respect mVp* settings instead.

◆ mShadowMapIdx

uint32 Ogre::CompositorPassDef::mShadowMapIdx

Shadow map index it belongs to (only filled in passes owned by Shadow Nodes)

◆ mUavDependencies

UavDependencyVec Ogre::CompositorPassDef::mUavDependencies

◆ mViewportModifierMask

uint8 Ogre::CompositorPassDef::mViewportModifierMask

◆ mVpHeight

float Ogre::CompositorPassDef::mVpHeight

◆ mVpLeft

float Ogre::CompositorPassDef::mVpLeft

Viewport's region to draw.

◆ mVpScissorHeight

float Ogre::CompositorPassDef::mVpScissorHeight

◆ mVpScissorLeft

float Ogre::CompositorPassDef::mVpScissorLeft

◆ mVpScissorTop

float Ogre::CompositorPassDef::mVpScissorTop

◆ mVpScissorWidth

float Ogre::CompositorPassDef::mVpScissorWidth

◆ mVpTop

float Ogre::CompositorPassDef::mVpTop

◆ mVpWidth

float Ogre::CompositorPassDef::mVpWidth

The documentation for this class was generated from the following file: