OGRE  14.2
Object-Oriented Graphics Rendering Engine
Ogre::MetalDepthBuffer Class Reference

#include <OgreMetalDepthBuffer.h>

+ Inheritance diagram for Ogre::MetalDepthBuffer:

Public Member Functions

 MetalDepthBuffer (uint16 poolId, MetalRenderSystem *renderSystem, uint32 width, uint32 height, uint32 fsaa, MTLPixelFormat pixelFormat, bool _isManual, id< MTLTexture > depthTexture, id< MTLTexture > stencilTexture, MetalDevice *device)
 
virtual ~MetalDepthBuffer ()
 
MTLPixelFormat getFormat () const
 
MetalDevicegetOwnerDevice (void) const
 
virtual bool isCompatible (RenderTarget *renderTarget) const
 Returns whether the specified RenderTarget is compatible with this DepthBuffer That is, this DepthBuffer can be attached to that RenderTarget. More...
 
- Public Member Functions inherited from Ogre::DepthBuffer
 DepthBuffer (uint16 poolId, uint32 width, uint32 height, uint32 fsaa, bool manual)
 
virtual ~DepthBuffer ()
 
virtual void _notifyRenderTargetAttached (RenderTarget *renderTarget)
 Called when a RenderTarget is attaches this DepthBuffer. More...
 
virtual void _notifyRenderTargetDetached (RenderTarget *renderTarget)
 Called when a RenderTarget is detaches from this DepthBuffer. More...
 
void _setPoolId (uint16 poolId)
 Sets the pool id in which this DepthBuffer lives. More...
 
uint32 getFSAA () const
 
virtual uint32 getHeight () const
 
virtual uint16 getPoolId () const
 Gets the pool id in which this DepthBuffer lives. More...
 
virtual uint32 getWidth () const
 
bool isManual () const
 Manual DepthBuffers are cleared in RenderSystem's destructor. More...
 

Public Attributes

MTLRenderPassDepthAttachmentDescriptor * mDepthAttachmentDesc
 
MTLRenderPassStencilAttachmentDescriptor * mStencilAttachmentDesc
 

Additional Inherited Members

- Public Types inherited from Ogre::DepthBuffer
enum  PoolId { POOL_NO_DEPTH = 0 , POOL_MANUAL_USAGE = 0 , POOL_DEFAULT = 1 }
 

Constructor & Destructor Documentation

◆ MetalDepthBuffer()

Ogre::MetalDepthBuffer::MetalDepthBuffer ( uint16  poolId,
MetalRenderSystem renderSystem,
uint32  width,
uint32  height,
uint32  fsaa,
MTLPixelFormat  pixelFormat,
bool  _isManual,
id< MTLTexture >  depthTexture,
id< MTLTexture >  stencilTexture,
MetalDevice device 
)

◆ ~MetalDepthBuffer()

virtual Ogre::MetalDepthBuffer::~MetalDepthBuffer ( )
virtual

Member Function Documentation

◆ isCompatible()

virtual bool Ogre::MetalDepthBuffer::isCompatible ( RenderTarget renderTarget) const
virtual

Returns whether the specified RenderTarget is compatible with this DepthBuffer That is, this DepthBuffer can be attached to that RenderTarget.

Most APIs impose the following restrictions:
Width & height must be equal or higher than the render target's
They must be of the same bit depth.
They need to have the same FSAA setting
Parameters
renderTargetThe render target to test against

Reimplemented from Ogre::DepthBuffer.

◆ getOwnerDevice()

MetalDevice* Ogre::MetalDepthBuffer::getOwnerDevice ( void  ) const
inline

◆ getFormat()

MTLPixelFormat Ogre::MetalDepthBuffer::getFormat ( ) const
inline

Member Data Documentation

◆ mDepthAttachmentDesc

MTLRenderPassDepthAttachmentDescriptor* Ogre::MetalDepthBuffer::mDepthAttachmentDesc

◆ mStencilAttachmentDesc

MTLRenderPassStencilAttachmentDescriptor* Ogre::MetalDepthBuffer::mStencilAttachmentDesc

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