VisuTwin Canvas
C++ 3D Engine — Metal Backend
Loading...
Searching...
No Matches
visutwin::canvas::RenderPass Class Reference

#include <platform/graphics/renderPass.h>

Inheritance diagram for visutwin::canvas::RenderPass:
[legend]

Public Member Functions

void addAfterPass (const std::shared_ptr< RenderPass > &renderPass)
void addBeforePass (const std::shared_ptr< RenderPass > &renderPass)
virtual void after ()
const std::vector< std::shared_ptr< RenderPass > > & afterPasses () const
void allocateAttachments ()
virtual void before ()
const std::vector< std::shared_ptr< RenderPass > > & beforePasses () const
void clearAfterPasses ()
void clearBeforePasses ()
const std::vector< std::shared_ptr< ColorAttachmentOps > > & colorArrayOps () const
std::shared_ptr< ColorAttachmentOpscolorOps () const
std::shared_ptr< DepthStencilAttachmentOpsdepthStencilOps () const
bool enabled () const
virtual void execute ()
virtual void frameUpdate () const
virtual void init (const std::shared_ptr< RenderTarget > &renderTarget=nullptr, const std::shared_ptr< RenderPassOptions > &options=nullptr)
void log (std::shared_ptr< GraphicsDevice > device, int index=0) const
virtual void onDisable ()
virtual void onEnable ()
virtual void postInit ()
void render ()
 RenderPass (const std::shared_ptr< GraphicsDevice > &device)
std::shared_ptr< RenderTargetrenderTarget () const
bool requiresCubemaps () const
float scaleX () const
float scaleY () const
void setClearColor (const Color *color=nullptr)
void setClearDepth (const float *depthValue=nullptr)
void setClearStencil (const int *stencilValue=nullptr)
void setEnabled (bool value)
void setOptions (const std::shared_ptr< RenderPassOptions > &value)
void setRequiresCubemaps (bool value)
void setSkipEnd (const bool value)
void setSkipStart (const bool value)

Protected Member Functions

std::shared_ptr< GraphicsDevicedevice () const

Protected Attributes

std::string _name
bool _requiresCubemaps = true

Detailed Description

Definition at line 63 of file renderPass.h.

Constructor & Destructor Documentation

◆ RenderPass()

Member Function Documentation

◆ addAfterPass()

void visutwin::canvas::RenderPass::addAfterPass ( const std::shared_ptr< RenderPass > & renderPass)

Definition at line 244 of file renderPass.cpp.

Referenced by visutwin::canvas::RenderPassSsao::RenderPassSsao().

◆ addBeforePass()

void visutwin::canvas::RenderPass::addBeforePass ( const std::shared_ptr< RenderPass > & renderPass)

◆ after()

virtual void visutwin::canvas::RenderPass::after ( )
inlinevirtual

◆ afterPasses()

const std::vector< std::shared_ptr< RenderPass > > & visutwin::canvas::RenderPass::afterPasses ( ) const
inline

Definition at line 85 of file renderPass.h.

◆ allocateAttachments()

void visutwin::canvas::RenderPass::allocateAttachments ( )

Definition at line 103 of file renderPass.cpp.

References colorOps(), and visutwin::canvas::isIntegerPixelFormat().

Referenced by init().

◆ before()

virtual void visutwin::canvas::RenderPass::before ( )
inlinevirtual

◆ beforePasses()

const std::vector< std::shared_ptr< RenderPass > > & visutwin::canvas::RenderPass::beforePasses ( ) const
inline

Definition at line 83 of file renderPass.h.

◆ clearAfterPasses()

void visutwin::canvas::RenderPass::clearAfterPasses ( )

Definition at line 256 of file renderPass.cpp.

◆ clearBeforePasses()

void visutwin::canvas::RenderPass::clearBeforePasses ( )

◆ colorArrayOps()

const std::vector< std::shared_ptr< ColorAttachmentOps > > & visutwin::canvas::RenderPass::colorArrayOps ( ) const
inline

◆ colorOps()

std::shared_ptr< ColorAttachmentOps > visutwin::canvas::RenderPass::colorOps ( ) const

◆ depthStencilOps()

std::shared_ptr< DepthStencilAttachmentOps > visutwin::canvas::RenderPass::depthStencilOps ( ) const
inline

◆ device()

std::shared_ptr< GraphicsDevice > visutwin::canvas::RenderPass::device ( ) const
inlineprotected

Definition at line 124 of file renderPass.h.

Referenced by visutwin::canvas::RenderPassForward::after(), visutwin::canvas::RenderPassPrepass::after(), visutwin::canvas::RenderPassDepthGrab::before(), visutwin::canvas::RenderPassForward::before(), visutwin::canvas::RenderPassCameraFrame::destroy(), visutwin::canvas::RenderPassCoC::execute(), visutwin::canvas::RenderPassCompose::execute(), visutwin::canvas::RenderPassDepthAwareBlur::execute(), visutwin::canvas::RenderPassDofBlur::execute(), visutwin::canvas::RenderPassShaderQuad::execute(), visutwin::canvas::RenderPassSsao::execute(), visutwin::canvas::RenderPassTAA::execute(), visutwin::canvas::RenderPassCameraFrame::frameUpdate(), log(), RenderPass(), visutwin::canvas::RenderPassBloom::RenderPassBloom(), visutwin::canvas::RenderPassCameraFrame::RenderPassCameraFrame(), visutwin::canvas::RenderPassCoC::RenderPassCoC(), visutwin::canvas::RenderPassColorGrab::RenderPassColorGrab(), visutwin::canvas::RenderPassCompose::RenderPassCompose(), visutwin::canvas::RenderPassCookieRenderer::RenderPassCookieRenderer(), visutwin::canvas::RenderPassDepthAwareBlur::RenderPassDepthAwareBlur(), visutwin::canvas::RenderPassDepthGrab::RenderPassDepthGrab(), visutwin::canvas::RenderPassDof::RenderPassDof(), visutwin::canvas::RenderPassDofBlur::RenderPassDofBlur(), visutwin::canvas::RenderPassDownsample::RenderPassDownsample(), visutwin::canvas::RenderPassDownsample::RenderPassDownsample(), visutwin::canvas::RenderPassForward::RenderPassForward(), visutwin::canvas::RenderPassPostprocessing::RenderPassPostprocessing(), visutwin::canvas::RenderPassPrepass::RenderPassPrepass(), visutwin::canvas::RenderPassShaderQuad::RenderPassShaderQuad(), visutwin::canvas::RenderPassShadowDirectional::RenderPassShadowDirectional(), visutwin::canvas::RenderPassShadowLocalClustered::RenderPassShadowLocalClustered(), visutwin::canvas::RenderPassShadowLocalNonClustered::RenderPassShadowLocalNonClustered(), visutwin::canvas::RenderPassSsao::RenderPassSsao(), visutwin::canvas::RenderPassTAA::RenderPassTAA(), visutwin::canvas::RenderPassUpdateClustered::RenderPassUpdateClustered(), and visutwin::canvas::RenderPassUpsample::RenderPassUpsample().

◆ enabled()

bool visutwin::canvas::RenderPass::enabled ( ) const
inline

Definition at line 95 of file renderPass.h.

◆ execute()

◆ frameUpdate()

◆ init()

void visutwin::canvas::RenderPass::init ( const std::shared_ptr< RenderTarget > & renderTarget = nullptr,
const std::shared_ptr< RenderPassOptions > & options = nullptr )
virtual

◆ log()

void visutwin::canvas::RenderPass::log ( std::shared_ptr< GraphicsDevice > device,
int index = 0 ) const

Definition at line 181 of file renderPass.cpp.

References device().

Referenced by render().

◆ onDisable()

virtual void visutwin::canvas::RenderPass::onDisable ( )
inlinevirtual

Reimplemented in visutwin::canvas::RenderPassBloom.

Definition at line 111 of file renderPass.h.

Referenced by setEnabled().

◆ onEnable()

virtual void visutwin::canvas::RenderPass::onEnable ( )
inlinevirtual

Definition at line 110 of file renderPass.h.

Referenced by setEnabled().

◆ postInit()

virtual void visutwin::canvas::RenderPass::postInit ( )
inlinevirtual

Definition at line 117 of file renderPass.h.

Referenced by init().

◆ render()

void visutwin::canvas::RenderPass::render ( )

Definition at line 25 of file renderPass.cpp.

References after(), before(), execute(), and log().

◆ renderTarget()

◆ requiresCubemaps()

bool visutwin::canvas::RenderPass::requiresCubemaps ( ) const
inline

Definition at line 107 of file renderPass.h.

References _requiresCubemaps.

◆ scaleX()

float visutwin::canvas::RenderPass::scaleX ( ) const
inline

Definition at line 79 of file renderPass.h.

Referenced by frameUpdate().

◆ scaleY()

float visutwin::canvas::RenderPass::scaleY ( ) const
inline

Definition at line 81 of file renderPass.h.

Referenced by frameUpdate().

◆ setClearColor()

void visutwin::canvas::RenderPass::setClearColor ( const Color * color = nullptr)

Definition at line 140 of file renderPass.cpp.

References colorOps().

Referenced by visutwin::canvas::RenderPassSsao::RenderPassSsao().

◆ setClearDepth()

void visutwin::canvas::RenderPass::setClearDepth ( const float * depthValue = nullptr)

Definition at line 157 of file renderPass.cpp.

◆ setClearStencil()

void visutwin::canvas::RenderPass::setClearStencil ( const int * stencilValue = nullptr)

Definition at line 169 of file renderPass.cpp.

◆ setEnabled()

void visutwin::canvas::RenderPass::setEnabled ( bool value)

Definition at line 57 of file renderPass.cpp.

References onDisable(), and onEnable().

Referenced by visutwin::canvas::RenderPassShadowLocalClustered::update().

◆ setOptions()

void visutwin::canvas::RenderPass::setOptions ( const std::shared_ptr< RenderPassOptions > & value)

◆ setRequiresCubemaps()

void visutwin::canvas::RenderPass::setRequiresCubemaps ( bool value)
inline

Definition at line 108 of file renderPass.h.

References _requiresCubemaps.

Referenced by visutwin::canvas::ShadowRenderer::setupRenderPass().

◆ setSkipEnd()

void visutwin::canvas::RenderPass::setSkipEnd ( const bool value)
inline

Definition at line 105 of file renderPass.h.

◆ setSkipStart()

void visutwin::canvas::RenderPass::setSkipStart ( const bool value)
inline

Definition at line 104 of file renderPass.h.

Member Data Documentation

◆ _name

std::string visutwin::canvas::RenderPass::_name
protected

◆ _requiresCubemaps


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