From e43a22931cbed55cba4bddc561d5f51a982615bd Mon Sep 17 00:00:00 2001 From: Avii Date: Mon, 23 Feb 2026 00:53:46 +0100 Subject: [PATCH] updated shader for better mixing of overlay --- .../webview_extend_standard_material.wgsl | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/src/webview/mesh/webview_extend_standard_material.wgsl b/src/webview/mesh/webview_extend_standard_material.wgsl index a002bf8..0fef98a 100644 --- a/src/webview/mesh/webview_extend_standard_material.wgsl +++ b/src/webview/mesh/webview_extend_standard_material.wgsl @@ -20,21 +20,12 @@ fn fragment( @builtin(front_facing) is_front: bool, ) -> FragmentOutput { var out: FragmentOutput; - var pbr_input = pbr_input_from_standard_material(in, is_front); - // var alpha = pbr_input.material.base_color.a; - - if overlay_color(in.uv).a > 0.0 { - pbr_input.material.base_color *= surface_color(in.uv); - pbr_input.material.base_color *= overlay_color(in.uv); - } else { - pbr_input.material.base_color *= surface_color(in.uv); - } - - pbr_input.material.base_color = alpha_discard(pbr_input.material, pbr_input.material.base_color); - - out.color = pbr_input.material.base_color; - // out.color.a *= alpha; + var surface = surface_color(in.uv); + var overlay = overlay_color(in.uv); + var result_rgb = mix(surface.rgb, overlay.rgb, overlay.a); + + out.color = vec4(result_rgb, 1.0); return out; }