VisuTwin Canvas
C++ 3D Engine — Metal Backend
Loading...
Searching...
No Matches
renderPassPostprocessing.h
Go to the documentation of this file.
1// SPDX-License-Identifier: Apache-2.0
2// Copyright 2025-2026 Arnis Lektauers
3//
4// Created by Arnis Lektauers on 11.12.2025.
5//
6#pragma once
7
8#include "renderer.h"
10
11namespace visutwin::canvas
12{
14 class RenderPassDof;
15 class RenderPassSsao;
16 class RenderPassTAA;
17
22 {
23 public:
24 RenderPassPostprocessing(const std::shared_ptr<GraphicsDevice>& device, Renderer* renderer, RenderAction* renderAction);
25
26 void execute() override;
27
28 private:
29 Renderer* _renderer = nullptr;
30 RenderAction* _renderAction = nullptr;
31 std::shared_ptr<RenderPassDof> _dofPass;
32 std::shared_ptr<RenderPassSsao> _ssaoPass;
33 std::shared_ptr<RenderPassTAA> _taaPass;
34 std::shared_ptr<RenderPassCompose> _composePass;
35 bool _passesBuilt = false;
36 };
37}
std::shared_ptr< GraphicsDevice > device() const
Definition renderPass.h:124
RenderPass(const std::shared_ptr< GraphicsDevice > &device)
Definition renderPass.h:66
RenderPassPostprocessing(const std::shared_ptr< GraphicsDevice > &device, Renderer *renderer, RenderAction *renderAction)