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

#include <OgreCompositorPassQuadDef.h>

+ Inheritance diagram for Ogre::CompositorPassQuadDef:

Classes

struct  QuadTextureSource
 

Public Types

enum  FrustumCorners {
  NO_CORNERS , VIEW_SPACE_CORNERS , VIEW_SPACE_CORNERS_NORMALIZED , VIEW_SPACE_CORNERS_NORMALIZED_LH ,
  WORLD_SPACE_CORNERS , WORLD_SPACE_CORNERS_CENTERED , CAMERA_DIRECTION
}
 
typedef vector< QuadTextureSource >::type TextureSources
 
typedef vector< UavDependency >::type UavDependencyVec
 

Public Member Functions

 CompositorPassQuadDef (CompositorNodeDef *parentNodeDef, CompositorTargetDef *parentTargetDef)
 
void addQuadTextureSource (size_t texUnitIdx, const String &textureName, size_t mrtIndex)
 Indicates the pass to change the texture units to use the specified texture sources.
 
const CompositorTargetDefgetParentTargetDef (void) const
 
uint32 getRtIndex (void) const
 
const TextureSourcesgetTextureSources (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 mCameraCubemapReorient
 When true, the camera will be rotated 90°, -90° or 180° depending on the value of mRtIndex and then restored to its original rotation after we're done.
 
IdString mCameraName
 
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
 
FrustumCorners mFrustumCorners
 Type of frustum corners to pass in the quad normals.
 
IdString mFsaaTextureName
 
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.
 
bool mIsResolve
 When true, the user is telling Ogre this pass just performs a custom FSAA resolve filter.
 
bool mMaterialIsHlms
 
String mMaterialName
 If true, mMaterialName is an Hlms material.
 
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
 
bool mUseQuad
 Whether to use a full screen quad or triangle.
 
uint8 mViewportModifierMask
 
float mVpHeight
 
float mVpLeft
 Viewport's region to draw.
 
float mVpScissorHeight
 
float mVpScissorLeft
 
float mVpScissorTop
 
float mVpScissorWidth
 
float mVpTop
 
float mVpWidth
 

Member Typedef Documentation

◆ TextureSources

◆ UavDependencyVec

Member Enumeration Documentation

◆ FrustumCorners

Enumerator
NO_CORNERS 
VIEW_SPACE_CORNERS 
VIEW_SPACE_CORNERS_NORMALIZED 

When normalized, then the corner is divided by the far plane.

This causes vector.z to be always 1, but the length of the vector itself may not be unit-length.

VIEW_SPACE_CORNERS_NORMALIZED_LH 
WORLD_SPACE_CORNERS 

Left-handed.

WORLD_SPACE_CORNERS_CENTERED 
CAMERA_DIRECTION 

Constructor & Destructor Documentation

◆ CompositorPassQuadDef()

Ogre::CompositorPassQuadDef::CompositorPassQuadDef ( CompositorNodeDef parentNodeDef,
CompositorTargetDef parentTargetDef 
)
inline

Member Function Documentation

◆ addQuadTextureSource()

void Ogre::CompositorPassQuadDef::addQuadTextureSource ( size_t  texUnitIdx,
const String textureName,
size_t  mrtIndex 
)

Indicates the pass to change the texture units to use the specified texture sources.

@See QuadTextureSource for params

◆ getParentTargetDef()

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

◆ getRtIndex()

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

◆ getTextureSources()

const TextureSources & Ogre::CompositorPassQuadDef::getTextureSources ( void  ) const
inline

◆ getType()

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

◆ 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
inherited

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

◆ mCameraCubemapReorient

bool Ogre::CompositorPassQuadDef::mCameraCubemapReorient

When true, the camera will be rotated 90°, -90° or 180° depending on the value of mRtIndex and then restored to its original rotation after we're done.

◆ mCameraName

IdString Ogre::CompositorPassQuadDef::mCameraName

◆ mColourWrite

bool Ogre::CompositorPassDef::mColourWrite
inherited

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
inherited

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

◆ mExecutionMask

uint8 Ogre::CompositorPassDef::mExecutionMask
inherited

◆ mExposedTextures

IdStringVec Ogre::CompositorPassDef::mExposedTextures
inherited

◆ mFrustumCorners

FrustumCorners Ogre::CompositorPassQuadDef::mFrustumCorners

Type of frustum corners to pass in the quad normals.

mCameraName contains which camera's frustum to pass

◆ mFsaaTextureName

IdString Ogre::CompositorPassQuadDef::mFsaaTextureName

◆ mIdentifier

uint32 Ogre::CompositorPassDef::mIdentifier
inherited

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

◆ mIncludeOverlays

bool Ogre::CompositorPassDef::mIncludeOverlays
inherited

TODO: Refactor OgreOverlay to remove this design atrocity.

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

◆ mIsResolve

bool Ogre::CompositorPassQuadDef::mIsResolve

When true, the user is telling Ogre this pass just performs a custom FSAA resolve filter.

Hence we should skip this pass for those APIs that don't support explicit resolving TODO: Not really implemented yet!!!

Remarks
@See TextureDefinitionBase::TextureDefinition::fsaaExplicitResolve

◆ mMaterialIsHlms

bool Ogre::CompositorPassQuadDef::mMaterialIsHlms

◆ mMaterialName

String Ogre::CompositorPassQuadDef::mMaterialName

If true, mMaterialName is an Hlms material.

◆ mNumInitialPasses

uint32 Ogre::CompositorPassDef::mNumInitialPasses
inherited

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

◆ mProfilingId

String Ogre::CompositorPassDef::mProfilingId
inherited

◆ mReadOnlyDepth

bool Ogre::CompositorPassDef::mReadOnlyDepth
inherited

◆ mReadOnlyStencil

bool Ogre::CompositorPassDef::mReadOnlyStencil
inherited

◆ mShadowMapFullViewport

bool Ogre::CompositorPassDef::mShadowMapFullViewport
inherited

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
inherited

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

◆ mUavDependencies

UavDependencyVec Ogre::CompositorPassDef::mUavDependencies
inherited

◆ mUseQuad

bool Ogre::CompositorPassQuadDef::mUseQuad

Whether to use a full screen quad or triangle.

(default: false). Note that you may not always get the triangle (for example, if you ask for WORLD_SPACE_CORNERS)

◆ mViewportModifierMask

uint8 Ogre::CompositorPassDef::mViewportModifierMask
inherited

◆ mVpHeight

float Ogre::CompositorPassDef::mVpHeight
inherited

◆ mVpLeft

float Ogre::CompositorPassDef::mVpLeft
inherited

Viewport's region to draw.

◆ mVpScissorHeight

float Ogre::CompositorPassDef::mVpScissorHeight
inherited

◆ mVpScissorLeft

float Ogre::CompositorPassDef::mVpScissorLeft
inherited

◆ mVpScissorTop

float Ogre::CompositorPassDef::mVpScissorTop
inherited

◆ mVpScissorWidth

float Ogre::CompositorPassDef::mVpScissorWidth
inherited

◆ mVpTop

float Ogre::CompositorPassDef::mVpTop
inherited

◆ mVpWidth

float Ogre::CompositorPassDef::mVpWidth
inherited

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