OGRE-Next  2.3
Object-Oriented Graphics Rendering Engine
Ogre::D3D9DepthBuffer Class Reference

#include <OgreD3D9DepthBuffer.h>

+ Inheritance diagram for Ogre::D3D9DepthBuffer:

Public Types

enum  DepthFormatsMask { DFM_D32 = 1u << 0u , DFM_D24 = 1u << 1u , DFM_D16 = 1u << 2u , DFM_S8 = 1u << 3u }
 
enum  PoolId {
  POOL_NO_DEPTH = 0 , POOL_MANUAL_USAGE = 0 , POOL_DEFAULT = 1 , POOL_NON_SHAREABLE = 65534 ,
  POOL_INVALID = 65535
}
 

Public Member Functions

 D3D9DepthBuffer (uint16 poolId, D3D9RenderSystem *renderSystem, IDirect3DDevice9 *creator, IDirect3DSurface9 *depthBufferSurf, D3DFORMAT fmt, uint32 width, uint32 height, uint32 fsaa, uint32 multiSampleQuality, bool isManual)
 
 ~D3D9DepthBuffer ()
 
IDirect3DSurface9 * getDepthBufferSurface () const
 
IDirect3DDevice9 * getDeviceCreator () const
 
virtual bool isCompatible (RenderTarget *renderTarget) const
 

Static Public Attributes

static uint8 AvailableDepthFormats
 During initialization DefaultDepthBufferFormat is overriden with a supported format. More...
 
static PixelFormatGpu DefaultDepthBufferFormat
 

Member Enumeration Documentation

◆ DepthFormatsMask

Enumerator
DFM_D32 
DFM_D24 
DFM_D16 
DFM_S8 

◆ PoolId

enum Ogre::DepthBuffer::PoolId
inherited
Enumerator
POOL_NO_DEPTH 
POOL_MANUAL_USAGE 
POOL_DEFAULT 
POOL_NON_SHAREABLE 
POOL_INVALID 

Constructor & Destructor Documentation

◆ D3D9DepthBuffer()

Ogre::D3D9DepthBuffer::D3D9DepthBuffer ( uint16  poolId,
D3D9RenderSystem renderSystem,
IDirect3DDevice9 *  creator,
IDirect3DSurface9 *  depthBufferSurf,
D3DFORMAT  fmt,
uint32  width,
uint32  height,
uint32  fsaa,
uint32  multiSampleQuality,
bool  isManual 
)

◆ ~D3D9DepthBuffer()

Ogre::D3D9DepthBuffer::~D3D9DepthBuffer ( )

Member Function Documentation

◆ getDepthBufferSurface()

IDirect3DSurface9* Ogre::D3D9DepthBuffer::getDepthBufferSurface ( ) const

◆ getDeviceCreator()

IDirect3DDevice9* Ogre::D3D9DepthBuffer::getDeviceCreator ( ) const

◆ isCompatible()

virtual bool Ogre::D3D9DepthBuffer::isCompatible ( RenderTarget *  renderTarget) const
virtual

Member Data Documentation

◆ AvailableDepthFormats

uint8 Ogre::DepthBuffer::AvailableDepthFormats
staticinherited

During initialization DefaultDepthBufferFormat is overriden with a supported format.

This can be troublesome when creating the first render window, as you cannot tell Ogre which format do you wish to use for that window.

That's where AvailableDepthFormats comes in:

Before initialization user can set this mask to inform which formats they want to use. Ogre will go from best format to worst until a supported one is found. The default value is all bits set.

Set this to 0 to never use depth buffers. If you only wish render windows to not use depth buffers, then create the window with miscParam["depth_buffer"] = "no";

After initialization the mask is left untouched

See DepthBuffer::DepthFormatsMask

◆ DefaultDepthBufferFormat

PixelFormatGpu Ogre::DepthBuffer::DefaultDepthBufferFormat
staticinherited

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