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; }