// Phase 1 stub. The shader exists; nothing drives the uniform yet. // // Phase 13 wires this onto the Floor TileMapLayer's material slot and // drives `tint_strength` from the per-cell Roof flag (Layer 4). For // Phase 1 the uniform stays at 0.0 and the shader is a no-op pass-through. // // See docs/architecture.md "Roofing" + "Indoor tint" sections. shader_type canvas_item; uniform float tint_strength : hint_range(0.0, 1.0) = 0.0; uniform vec4 tint_color : source_color = vec4(0.55, 0.65, 0.85, 1.0); void fragment() { vec4 base = texture(TEXTURE, UV); // At tint_strength = 0 this is a pure pass-through. COLOR = mix(base, vec4(tint_color.rgb, base.a), tint_strength * base.a); }