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

#include <scene/graphics/renderPassDepthAwareBlur.h>

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

Public Member Functions

void execute () override
 RenderPassDepthAwareBlur (const std::shared_ptr< GraphicsDevice > &device, Texture *sourceTexture, CameraComponent *cameraComponent, bool horizontal)
Public Member Functions inherited from visutwin::canvas::RenderPassShaderQuad
void clearQuadTextureBindings ()
void execute () override
 RenderPassShaderQuad (const std::shared_ptr< GraphicsDevice > &device)
void setQuadTextureBinding (const size_t slot, Texture *texture)
void setShader (const std::shared_ptr< Shader > &shader)
std::shared_ptr< Shadershader () const
Public Member Functions inherited from visutwin::canvas::RenderPass
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 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)

Additional Inherited Members

Public Attributes inherited from visutwin::canvas::RenderPassShaderQuad
std::shared_ptr< BlendStateblendState = std::make_shared<BlendState>()
CullMode cullMode = CullMode::CULLFACE_NONE
std::shared_ptr< DepthStatedepthState = std::make_shared<DepthState>()
std::optional< Vector4scissor
std::shared_ptr< StencilParametersstencilBack = nullptr
std::shared_ptr< StencilParametersstencilFront = nullptr
std::optional< Vector4viewport
Protected Member Functions inherited from visutwin::canvas::RenderPass
std::shared_ptr< GraphicsDevicedevice () const
Protected Attributes inherited from visutwin::canvas::RenderPass
std::string _name
bool _requiresCubemaps = true

Detailed Description

Render pass implementing a bilateral depth-aware blur. Used to blur the SSAO output while preserving edges at depth discontinuities.

Definition at line 19 of file renderPassDepthAwareBlur.h.

Constructor & Destructor Documentation

◆ RenderPassDepthAwareBlur()

visutwin::canvas::RenderPassDepthAwareBlur::RenderPassDepthAwareBlur ( const std::shared_ptr< GraphicsDevice > & device,
Texture * sourceTexture,
CameraComponent * cameraComponent,
bool horizontal )

Member Function Documentation

◆ execute()


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