From 156edad6c51cbc3b29f71de5f5ee09b64ab10d91 Mon Sep 17 00:00:00 2001 From: Sergii Liebodkin Date: Thu, 24 Jul 2025 16:03:03 +0300 Subject: [PATCH] wg/gl: add composition blend mode Set the scene to use Composition mode so that it generates a pre-composition image, and then normal blend with destination. https://github.com/thorvg/thorvg/pull/3621 --- src/renderer/gl_engine/tvgGlRenderer.cpp | 5 +---- src/renderer/wg_engine/tvgWgRenderer.cpp | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/src/renderer/gl_engine/tvgGlRenderer.cpp b/src/renderer/gl_engine/tvgGlRenderer.cpp index a7baf2af..291033e6 100644 --- a/src/renderer/gl_engine/tvgGlRenderer.cpp +++ b/src/renderer/gl_engine/tvgGlRenderer.cpp @@ -980,10 +980,7 @@ const RenderSurface* GlRenderer::mainSurface() bool GlRenderer::blend(BlendMethod method) { - if (method == mBlendMethod) return true; - - mBlendMethod = method; - + mBlendMethod = (method == BlendMethod::Composition ? BlendMethod::Normal : method); return true; } diff --git a/src/renderer/wg_engine/tvgWgRenderer.cpp b/src/renderer/wg_engine/tvgWgRenderer.cpp index 8fe347ab..13183977 100644 --- a/src/renderer/wg_engine/tvgWgRenderer.cpp +++ b/src/renderer/wg_engine/tvgWgRenderer.cpp @@ -283,7 +283,7 @@ RenderRegion WgRenderer::region(RenderData data) bool WgRenderer::blend(BlendMethod method) { - mBlendMethod = method; + mBlendMethod = (method == BlendMethod::Composition ? BlendMethod::Normal : method); return true; }