API Documentation
Public Member Functions | Static Public Attributes | List of all members
nkGraphics::DepthStencilStateManager Class Reference

Manages the depth stencil states recorded. More...

Inheritance diagram for nkGraphics::DepthStencilStateManager:
nkGraphics::Manager< DepthStencilState >

Public Member Functions

DepthStencilStategetDefaultState () const
 
- Public Member Functions inherited from nkGraphics::Manager< DepthStencilState >
DepthStencilStatecreateOrRetrieve (nkMemory::StringView name)
 
DepthStencilStaterecord (nkMemory::StringView name, nkMemory::UniquePtr< DepthStencilState > resource)
 
DepthStencilStateget (nkMemory::StringView name) const
 
DepthStencilStategetByIndex (unsigned int index) const
 
void rename (nkMemory::StringView currentName, nkMemory::StringView newName)
 
void erase (nkMemory::StringView name)
 
nkMemory::UniquePtr< DepthStencilStaterelinquish (nkMemory::StringView name)
 

Static Public Attributes

static const nkMemory::StringView DEFAULT_NO_DEPTH = "NILKINS_NO_DEPTH"
 Default state ignoring depth. More...
 
static const nkMemory::StringView DEFAULT_BEHIND_EVERYTHING = "NILKINS_BEHIND_EVERYTHING"
 Default state painting only if depth is less or equal for standard Z. More...
 
static const nkMemory::StringView DEFAULT_BEHIND_EVERYTHING_REVERSE_Z = "NILKINS_BEHIND_EVERYTHING_REVERSE_Z"
 Default state painting only if depth is less or equal for reversed Z. More...
 

Detailed Description

Manages the depth stencil states recorded.

DepthStencilState creation / deletion can go through this class, allowing it to act as a repository of resources which lifetime will get managed as needed. Like any Manager, it is always owning the memory it owns, unless it passes back the ownership explicitly.

Member Function Documentation

◆ getDefaultState()

DepthStencilState* nkGraphics::DepthStencilStateManager::getDefaultState ( ) const
Returns
The default state used during rendering if no overload within a pass is provided.

Member Data Documentation

◆ DEFAULT_NO_DEPTH

const nkMemory::StringView nkGraphics::DepthStencilStateManager::DEFAULT_NO_DEPTH = "NILKINS_NO_DEPTH"
inlinestatic

Default state ignoring depth.

This state is used during post processing passes that are not set as back processing, for instance. It fully disable depth/stencil reading and writing.

◆ DEFAULT_BEHIND_EVERYTHING

const nkMemory::StringView nkGraphics::DepthStencilStateManager::DEFAULT_BEHIND_EVERYTHING = "NILKINS_BEHIND_EVERYTHING"
inlinestatic

Default state painting only if depth is less or equal for standard Z.

This state is used during standard Z post processing passes that are set as back processing, for instance. It disables depth writing and uses the FUNCTION_LESS_EQUAL with stencil disabled.

◆ DEFAULT_BEHIND_EVERYTHING_REVERSE_Z

const nkMemory::StringView nkGraphics::DepthStencilStateManager::DEFAULT_BEHIND_EVERYTHING_REVERSE_Z = "NILKINS_BEHIND_EVERYTHING_REVERSE_Z"
inlinestatic

Default state painting only if depth is less or equal for reversed Z.

This state is used during reversed Z post processing passes that are set as back processing, for instance. It disables depth writing and uses the FUNCTION_GREATER_EQUAL with stencil disabled.


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