diff --git a/include/Engine/Rendering/DrawFinalPass.h b/include/Engine/Rendering/DrawFinalPass.h index fee6454b..4cf88842 100644 --- a/include/Engine/Rendering/DrawFinalPass.h +++ b/include/Engine/Rendering/DrawFinalPass.h @@ -24,7 +24,7 @@ public: GLuint BloomTexture() const { return m_BloomTexture; } //Return the texture with diffuse and lighting of the scene. GLuint SceneTexture() const { return m_SceneTexture; } - FrameBuffer FinalPassFrameBuffer() { return m_FinalPassFrameBuffer; } + FrameBuffer* FinalPassFrameBuffer() { return &m_FinalPassFrameBuffer; } private: diff --git a/resources/Shaders/Text.frag.glsl b/resources/Shaders/Text.frag.glsl index d2ac7dca..3b0f9e28 100644 --- a/resources/Shaders/Text.frag.glsl +++ b/resources/Shaders/Text.frag.glsl @@ -13,5 +13,5 @@ void main() vec4 sampled = vec4(1.0, 1.0, 1.0, texture(text, TexCoords).r); vec4 color_result = textColor * sampled; sceneColor = vec4(color_result.xyz, clamp(color_result.a, 0, 1)); - bloomColor = vec4(clamp(color_result.xyz - 1.0, 0, 100), 1.0); + bloomColor = vec4(clamp(color_result.xyz - 1.0, 0, 100), 1.0) * sampled; } \ No newline at end of file diff --git a/src/Engine/Rendering/Renderer.cpp b/src/Engine/Rendering/Renderer.cpp index c07c6373..770baabf 100644 --- a/src/Engine/Rendering/Renderer.cpp +++ b/src/Engine/Rendering/Renderer.cpp @@ -101,7 +101,7 @@ void Renderer::Draw(RenderFrame& frame) GLERROR("Renderer::Draw m_DrawScenePass->Draw"); - m_TextPass->Draw(*scene, m_DrawFinalPass->FinalPassFrameBuffer()); + m_TextPass->Draw(*scene, *m_DrawFinalPass->FinalPassFrameBuffer()); } m_DrawBloomPass->Draw(m_DrawFinalPass->BloomTexture());