Skip to main content

LOD_WGSL

Constant LOD_WGSL 

Source
pub const LOD_WGSL: &str = r#"
fn lod_hash(pixel: vec2u, object_id: u32) -> f32 {
    var value = pixel.x * 1664525u + pixel.y * 1013904223u + object_id * 747796405u;
    value = (value ^ (value >> 16u)) * 2246822519u;
    value = (value ^ (value >> 13u)) * 3266489917u;
    return f32(value ^ (value >> 16u)) * (1.0 / 4294967296.0);
}

fn lod_keep(pixel: vec2u, object_id: u32, coverage: f32) -> bool {
    return lod_hash(pixel, object_id) < coverage;
}
"#;