OGRE-Next: Ogre::CompositorPassUavDef Class Reference

| OGRE-Next 3.0.0 Object-Oriented Graphics Rendering Engine

Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
Ogre::CompositorPassUavDef Class Reference
Core » Effects

`#include <OgreCompositorPassUavDef.h>`

Inheritance diagram for Ogre::CompositorPassUavDef:
[legend]

## Classes
struct | BufferSource
struct | TextureSource

## Public Types
typedef vector< BufferSource >::type | BufferSourceVec
typedef vector< TextureSource >::type | TextureSources
Public Types inherited from Ogre::CompositorPassDef
typedef vector< UavDependency >::type | UavDependencyVec

## Public Member Functions
| CompositorPassUavDef (CompositorNodeDef *parentNodeDef, CompositorTargetDef *parentTargetDef)
void | addUavBuffer (uint32 slotIdx, IdString bufferName, ResourceAccess::ResourceAccess access, size_t offset=0, size_t sizeBytes=0)
const BufferSourceVec & | getBufferSources () const
const TextureSources & | getTextureSources () const
void | setUav (uint32 slot, bool isExternal, const String &textureName, ResourceAccess::ResourceAccess access, uint8 mipmapLevel, PixelFormatGpu pixelFormat)
| Indicates the pass to change the UAV slots to use the specified texture sources.
Public Member Functions inherited from Ogre::CompositorPassDef
| CompositorPassDef (CompositorPassType passType, CompositorTargetDef *parentTargetDef)
virtual | ~CompositorPassDef ()
const CompositorTargetDef * | getParentTargetDef () const
uint32 | getRtIndex () const
CompositorPassType | getType () const
void | setAllClearColours (const ColourValue &clearValue)
void | setAllLoadActions (LoadAction::LoadAction loadAction)
void | setAllStoreActions (StoreAction::StoreAction storeAction)

## Public Attributes
uint8 | mStartingSlot
| Max value (0xff) means don't alter it.
Public Attributes inherited from Ogre::CompositorPassDef
ColourValue | mClearColour [OGRE_MAX_MULTIPLE_RENDER_TARGETS]
float | mClearDepth
uint32 | mClearStencil
bool | mColourWrite
| When false will not really bind the RenderTarget for rendering and use a null colour buffer instead.
uint8 | mExecutionMask
IdStringVec | mExposedTextures
bool | mFlushCommandBuffers
| Whether to flush the command buffer at the end of the pass.
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.
LoadAction::LoadAction | mLoadActionColour [OGRE_MAX_MULTIPLE_RENDER_TARGETS]
LoadAction::LoadAction | mLoadActionDepth
LoadAction::LoadAction | mLoadActionStencil
uint32 | mNumInitialPasses
| Number of times to perform the pass before stopping. -1 to never stop.
uint32 | mNumViewports
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)
bool | mSkipLoadStoreSemantics
| Ignore mLoadAction*‍/mStoreAction*.
StoreAction::StoreAction | mStoreActionColour [OGRE_MAX_MULTIPLE_RENDER_TARGETS]
StoreAction::StoreAction | mStoreActionDepth
StoreAction::StoreAction | mStoreActionStencil
UavDependencyVec | mUavDependencies
uint8 | mViewportModifierMask
ViewportRect | mVpRect [16]
| Viewport's region to draw.
bool | mWarnIfRtvWasFlushed
| Will issue a warning (by raising an exception) if Ogre is forced to flush the RenderTarget, which is very bad for performance on mobile, and can cause serious performance problems in Desktop if using MSAA, and also cause correctness problems (i.e.

## Member Typedef Documentation

## ◆ BufferSourceVec

typedef vector<BufferSource>::type Ogre::CompositorPassUavDef::BufferSourceVec

## ◆ TextureSources

typedef vector<TextureSource>::type Ogre::CompositorPassUavDef::TextureSources

## Constructor & Destructor Documentation

## ◆ CompositorPassUavDef()

Ogre::CompositorPassUavDef::CompositorPassUavDef | ( | CompositorNodeDef * | parentNodeDef,
|  | CompositorTargetDef * | parentTargetDef )
| inline

References Ogre::CompositorPassDef::CompositorPassDef(), mStartingSlot, and Ogre::PASS_UAV.

## Member Function Documentation

## ◆ addUavBuffer()

void Ogre::CompositorPassUavDef::addUavBuffer | ( | uint32 | slotIdx,
|  | IdString | bufferName,
|  | ResourceAccess::ResourceAccess | access,
|  | size_t | offset = 0,
|  | size_t | sizeBytes = 0 )

## ◆ getBufferSources()

const BufferSourceVec & Ogre::CompositorPassUavDef::getBufferSources | ( |  | ) | const
| inline

## ◆ getTextureSources()

const TextureSources & Ogre::CompositorPassUavDef::getTextureSources | ( |  | ) | const
| inline

## ◆ setUav()

void Ogre::CompositorPassUavDef::setUav | ( | uint32 | slot,
|  | bool | isExternal,
|  | const String & | textureName,
|  | ResourceAccess::ResourceAccess | access,
|  | uint8 | mipmapLevel,
|  | PixelFormatGpu | pixelFormat )

Indicates the pass to change the UAV slots to use the specified texture sources.

Parameters

  slot | The buffer binding location for shader access. For OpenGL this must be unique and is not related to the texture binding point.
  isExternal | True if the texture is a random texture that needs to be loaded via TextureManager::getByName; false if it's an RTT controlled by the CompositorManager (i.e. a global texture, an input texture, or a local texture)
  textureName | Name of the texture. When empty, it will clear the slots.
  access | The texture access privileges given to the shader.
  mipmapLevel | The texture mipmap level to use.
  pixelFormat | Texture format to be read in by shader. This may be different than the bound texture format. Will be the same is left as PFG_UNKNOWN

## Member Data Documentation

## ◆ mStartingSlot

uint8 Ogre::CompositorPassUavDef::mStartingSlot

Max value (0xff) means don't alter it.

See also
  RenderSystem::setUavStartingSlot

Referenced by CompositorPassUavDef().

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

- OgreCompositorPassUavDef.h