pub fn shade_fragment<S, T>(
shadow_map: &T,
shadow_map_sampler: &S,
camera_pos: Vec3,
in_norm: Vec3,
in_pos: Vec3,
albedo: Vec3,
metallic: f32,
roughness: f32,
ao: f32,
emissive: Vec3,
irradiance: Vec3,
prefiltered: Vec3,
brdf: Vec2,
light_slab: &[u32],
frag_coord: Vec4,
) -> Vec4where
S: IsSampler,
T: Sample2dArray<Sampler = S>,