From 3f122e57f118db1229a4bad2c54be624f2f8f19c Mon Sep 17 00:00:00 2001 From: LaG1924 Date: Sun, 5 Dec 2021 00:51:39 +0500 Subject: Added SSAO --- src/RenderConfigs.hpp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'src/RenderConfigs.hpp') diff --git a/src/RenderConfigs.hpp b/src/RenderConfigs.hpp index 1e6a978..ef4c97d 100644 --- a/src/RenderConfigs.hpp +++ b/src/RenderConfigs.hpp @@ -4,7 +4,12 @@ struct GlobalShaderParameters { glm::mat4 projView; + glm::mat4 proj; + glm::mat4 view; glm::uvec2 viewportSize; + glm::uint32 paddingFA = 0xFAAFFAFA; + glm::uint32 paddingFB = 0xFBFBFBFB; + glm::vec4 ssaoKernels[64]; glm::float32 globalTime; glm::float32 dayTime; glm::float32 gamma; @@ -55,12 +60,15 @@ public: }; class Gbuffer { + std::shared_ptr ssaoNoise; + std::unique_ptr ssaoPass; std::unique_ptr lightingPass; + std::shared_ptr depthStencil; std::shared_ptr color; //RGB - color std::shared_ptr normal; //RGB - normal + std::shared_ptr worldPos; //RGB - viewSpaceWorldPos std::shared_ptr addColor; //RGB - addColor std::shared_ptr light; //R - faceLight, G - skyLight, B - unused - std::shared_ptr depthStencil; std::shared_ptr geomFramebuffer; public: @@ -75,16 +83,18 @@ public: } void Render() { + ssaoPass->Render(); lightingPass->Render(); } void Clear() { geomFramebuffer->Clear(); + ssaoPass->Clear(); lightingPass->Clear(); } int GetMaxRenderBuffers() { - return 5; + return 7; } void SetRenderBuff(int renderBuff) { -- cgit v1.2.3