OGRE-Next
4.0.0unstable
Object-Oriented Graphics Rendering Engine
|
Abstract class for compositor passes. More...
#include <OgreCompositorPass.h>
Public Member Functions | |
CompositorPass (const CompositorPassDef *definition, CompositorNode *parentNode) | |
virtual | ~CompositorPass () |
ResourceTransitionArray & | _getResourceTransitionsNonConst () |
virtual void | analyzeBarriers (const bool bClearBarriers=true) |
Bakes all of the memory barriers / resource transition that will be needed before executing a GPU command like rendering, copying/blit or compute. More... | |
virtual void | execute (const Camera *lodCameraconst)=0 |
Vector2 | getActualDimensions () const |
const TextureGpu * | getAnyTargetTexture () const |
Contains the first valid texture in mRenderPassDesc, to be used for reference (e.g. More... | |
const CompositorPassDef * | getDefinition () const |
const CompositorNode * | getParentNode () const |
RenderPassDescriptor * | getRenderPassDesc () const |
const ResourceTransitionArray & | getResourceTransitions () const |
const CompositorTextureVec & | getTextureDependencies () const |
CompositorPassType | getType () const |
Real | getViewportAspectRatio (size_t vpIdx) |
virtual void | notifyCleared () |
virtual void | notifyDestroyed (const UavBufferPacked *buffer) |
virtual void | notifyDestroyed (TextureGpu *channel) |
virtual bool | notifyRecreated (const TextureGpu *channel) |
virtual void | notifyRecreated (const UavBufferPacked *oldBuffer, UavBufferPacked *newBuffer) |
void | profilingBegin () |
void | profilingEnd () |
virtual void | resetNumPassesLeft () |
Abstract class for compositor passes.
A pass can be a fullscreen quad, a scene rendering, a clear. etc. Derived classes are responsible for performing an actual job. Note that passes do not own RenderTargets, therefore we're not responsible for destroying it.
Ogre::CompositorPass::CompositorPass | ( | const CompositorPassDef * | definition, |
CompositorNode * | parentNode | ||
) |
|
virtual |
|
inline |
|
virtual |
Bakes all of the memory barriers / resource transition that will be needed before executing a GPU command like rendering, copying/blit or compute.
bClearBarriers | True to do mResourceTransitions.clear(); |
|
pure virtual |
Implemented in Ogre::CompositorPassWarmUp, Ogre::CompositorPassUav, Ogre::CompositorPassTargetBarrier, Ogre::CompositorPassStencil, Ogre::CompositorPassShadows, Ogre::CompositorPassScene, Ogre::CompositorPassQuad, Ogre::CompositorPassMipmap, Ogre::CompositorPassIblSpecular, Ogre::CompositorPassDepthCopy, Ogre::CompositorPassCompute, and Ogre::CompositorPassClear.
Vector2 Ogre::CompositorPass::getActualDimensions | ( | ) | const |
|
inline |
Contains the first valid texture in mRenderPassDesc, to be used for reference (e.g.
width, height, etc). Could be colour, depth, stencil, or nullptr.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Real Ogre::CompositorPass::getViewportAspectRatio | ( | size_t | vpIdx | ) |
|
virtual |
Reimplemented in Ogre::CompositorPassScene.
|
virtual |
|
virtual |
|
virtual |
Reimplemented in Ogre::CompositorPassMipmap, and Ogre::CompositorPassIblSpecular.
|
virtual |
Reimplemented in Ogre::CompositorPassUav.
void Ogre::CompositorPass::profilingBegin | ( | ) |
void Ogre::CompositorPass::profilingEnd | ( | ) |
|
virtual |
Reimplemented in Ogre::CompositorPassIblSpecular.