1*4882a593SmuzhiyunFrom 5286cbfe9cf2f66ff30de65c20d8005a6e85e3e7 Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: Jeffy Chen <jeffy.chen@rock-chips.com> 3*4882a593SmuzhiyunDate: Fri, 5 Aug 2022 11:27:54 +0800 4*4882a593SmuzhiyunSubject: [PATCH 74/92] gl-renderer: Clear RGB when alpha is zero in fast path 5*4882a593Smuzhiyun 6*4882a593SmuzhiyunSigned-off-by: Jeffy Chen <jeffy.chen@rock-chips.com> 7*4882a593Smuzhiyun--- 8*4882a593Smuzhiyun libweston/renderer-gl/fragment.glsl | 2 ++ 9*4882a593Smuzhiyun 1 file changed, 2 insertions(+) 10*4882a593Smuzhiyun 11*4882a593Smuzhiyundiff --git a/libweston/renderer-gl/fragment.glsl b/libweston/renderer-gl/fragment.glsl 12*4882a593Smuzhiyunindex a950578..e294afd 100644 13*4882a593Smuzhiyun--- a/libweston/renderer-gl/fragment.glsl 14*4882a593Smuzhiyun+++ b/libweston/renderer-gl/fragment.glsl 15*4882a593Smuzhiyun@@ -288,6 +288,8 @@ main() 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun if (c_need_color_pipeline) 18*4882a593Smuzhiyun color = color_pipeline(color); /* Produces straight alpha */ 19*4882a593Smuzhiyun+ else if (color.a == 0.0) 20*4882a593Smuzhiyun+ color.rgb = vec3(0, 0, 0); 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun /* Ensure pre-multiplied for blending */ 23*4882a593Smuzhiyun if (!c_input_is_premult || c_need_color_pipeline) 24*4882a593Smuzhiyun-- 25*4882a593Smuzhiyun2.20.1 26*4882a593Smuzhiyun 27