Files
kneeboard2/assets/shaders/shader.wgsl
2026-02-25 03:19:56 +01:00

25 lines
833 B
WebGPU Shading Language

#import bevy_pbr::forward_io::{VertexOutput, FragmentOutput}
@group(#{MATERIAL_BIND_GROUP}) @binding(101) var ui_texture: texture_2d<f32>;
@group(#{MATERIAL_BIND_GROUP}) @binding(102) var ui_texture_sampler: sampler;
@group(#{MATERIAL_BIND_GROUP}) @binding(103) var cursor_texture: texture_2d<f32>;
@group(#{MATERIAL_BIND_GROUP}) @binding(104) var cursor_texture_sampler: sampler;
@fragment
fn fragment(
in: VertexOutput,
) -> FragmentOutput {
var out: FragmentOutput;
// textureSample(material_color_texture, material_color_sampler, in.uv);
var surface = textureSample(ui_texture, ui_texture_sampler, in.uv);
var overlay = textureSample(cursor_texture, cursor_texture_sampler, in.uv);
var result_rgb = mix(surface.rgb, overlay.rgb, overlay.a);
out.color = vec4(result_rgb, 1.0);
return out;
}