OGRE-Next
4.0.0unstable
Object-Oriented Graphics Rendering Engine
|
#include <OgreCompositorPassUavDef.h>
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. More... | |
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. More... | |
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. More... | |
uint8 | mExecutionMask |
IdStringVec | mExposedTextures |
bool | mFlushCommandBuffers |
Whether to flush the command buffer at the end of the pass. More... | |
uint32 | mIdentifier |
Custom value in case there's a listener attached (to identify the pass) More... | |
bool | mIncludeOverlays |
TODO: Refactor OgreOverlay to remove this design atrocity. More... | |
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. More... | |
uint32 | mNumViewports |
String | mProfilingId |
bool | mReadOnlyDepth |
bool | mReadOnlyStencil |
bool | mShadowMapFullViewport |
Only used if mShadowMapIdx is valid (if pass is owned by Shadow Nodes). More... | |
uint32 | mShadowMapIdx |
Shadow map index it belongs to (only filled in passes owned by Shadow Nodes) More... | |
bool | mSkipLoadStoreSemantics |
Ignore mLoadAction*/mStoreAction*. More... | |
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. More... | |
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. More... | |
typedef vector<BufferSource>::type Ogre::CompositorPassUavDef::BufferSourceVec |
typedef vector<TextureSource>::type Ogre::CompositorPassUavDef::TextureSources |
|
inline |
void Ogre::CompositorPassUavDef::addUavBuffer | ( | uint32 | slotIdx, |
IdString | bufferName, | ||
ResourceAccess::ResourceAccess | access, | ||
size_t | offset = 0 , |
||
size_t | sizeBytes = 0 |
||
) |
|
inline |
|
inline |
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.
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 |
uint8 Ogre::CompositorPassUavDef::mStartingSlot |
Max value (0xff) means don't alter it.