1From f896699c8cdac55e0460c506ba633d22b9086626 Mon Sep 17 00:00:00 2001 2From: Jeffy Chen <jeffy.chen@rock-chips.com> 3Date: Fri, 5 Aug 2022 11:27:54 +0800 4Subject: [PATCH 75/79] gl-renderer: Clear RGB when alpha is zero in fast path 5 6Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com> 7--- 8 libweston/renderer-gl/fragment.glsl | 8 ++++++-- 9 1 file changed, 6 insertions(+), 2 deletions(-) 10 11diff --git a/libweston/renderer-gl/fragment.glsl b/libweston/renderer-gl/fragment.glsl 12index 4414b63..a90cbfa 100644 13--- a/libweston/renderer-gl/fragment.glsl 14+++ b/libweston/renderer-gl/fragment.glsl 15@@ -253,8 +253,12 @@ main() 16 /* Fast path for disabled color management */ 17 18 if (c_input_is_premult) { 19- /* View alpha (opacity) */ 20- color *= alpha; 21+ if (color.a == 0.0) { 22+ color.rgb = vec3(0, 0, 0); 23+ } else { 24+ /* View alpha (opacity) */ 25+ color *= alpha; 26+ } 27 } else { 28 /* View alpha (opacity) */ 29 color.a *= alpha; 30-- 312.20.1 32 33