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

Forward PBR renderer that builds a FrameGraph from the scene's layer composition. More...

#include <scene/renderer/forwardRenderer.h>

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

Public Member Functions

void addMainRenderPass (FrameGraph *frameGraph, LayerComposition *layerComposition, RenderTarget *renderTarget, int startIndex, int endIndex)
void buildFrameGraph (FrameGraph *frameGraph, LayerComposition *layerComposition)
 ForwardRenderer (const std::shared_ptr< GraphicsDevice > &device, const std::shared_ptr< Scene > &scene)
Public Member Functions inherited from visutwin::canvas::Renderer
void cullShadowmaps (Camera *camera)
 Renderer (const std::shared_ptr< GraphicsDevice > &device, const std::shared_ptr< Scene > &scene)
void renderForwardLayer (Camera *camera, RenderTarget *renderTarget, Layer *layer, bool transparent)

Additional Inherited Members

Protected Member Functions inherited from visutwin::canvas::Renderer
ShadowRendererDirectionalshadowRendererDirectional () const
Protected Attributes inherited from visutwin::canvas::Renderer
std::unordered_map< Camera *, std::vector< Light * > > _cameraDirShadowLights
std::shared_ptr< GraphicsDevice_device
std::vector< Light * > _lights
std::vector< Light * > _localLights
std::vector< std::unique_ptr< ShadowMap > > _ownedShadowMaps
std::shared_ptr< RenderPassUpdateClustered_renderPassUpdateClustered
std::shared_ptr< Scene_scene
std::unique_ptr< ShadowRendererLocal_shadowRendererLocal

Detailed Description

Forward PBR renderer that builds a FrameGraph from the scene's layer composition.

ForwardRenderer is the main rendering path. It constructs a FrameGraph containing shadow passes, the main forward pass (multi-light PBR), clustered-lighting updates, and post-processing (SSAO, TAA, DOF, compose). The frame graph is rebuilt each frame via buildFrameGraph() and then compiled and executed.

Definition at line 23 of file forwardRenderer.h.

Constructor & Destructor Documentation

◆ ForwardRenderer()

visutwin::canvas::ForwardRenderer::ForwardRenderer ( const std::shared_ptr< GraphicsDevice > & device,
const std::shared_ptr< Scene > & scene )
inline

Definition at line 26 of file forwardRenderer.h.

References visutwin::canvas::Renderer::Renderer().

Member Function Documentation

◆ addMainRenderPass()

void visutwin::canvas::ForwardRenderer::addMainRenderPass ( FrameGraph * frameGraph,
LayerComposition * layerComposition,
RenderTarget * renderTarget,
int startIndex,
int endIndex )

◆ buildFrameGraph()


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