From 44bbb02aa1c3aa6a13c780acce088933a6cec0e4 Mon Sep 17 00:00:00 2001 From: omigamedev Date: Tue, 3 Sep 2019 08:05:53 +0200 Subject: [PATCH] fix rendering issue when layer blending mode is used --- src/node_canvas.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/node_canvas.cpp b/src/node_canvas.cpp index a21d322..49e83eb 100644 --- a/src/node_canvas.cpp +++ b/src/node_canvas.cpp @@ -182,6 +182,7 @@ void NodeCanvas::draw() if (use_blend) { + glViewport(0, 0, m_cache_rtt.getWidth(), m_cache_rtt.getHeight()); m_cache_rtt.bindFramebuffer(); m_cache_rtt.clear({ 1, 1, 1, 0 }); } @@ -398,6 +399,10 @@ void NodeCanvas::draw() if (use_blend) { m_cache_rtt.unbindFramebuffer(); + if (m_density != 1.f) + glViewport(0, 0, m_rtt.getWidth(), m_rtt.getHeight()); + else + glViewport(c.x + App::I->off_x, c.y + App::I->off_y, c.z, c.w); } // draw the grid behind the layers using a temporary copy