#[derive(Debug, Clone, Copy, PartialEq)]
pub struct PbrMaterial {
pub albedo: [f32; 3],
pub roughness: f32,
pub metallic: f32,
}
impl PbrMaterial {
pub fn dark_terrain() -> Self {
Self {
albedo: [0.20, 0.19, 0.18],
roughness: 0.92,
metallic: 0.0,
}
}
pub fn icy_bright_patch() -> Self {
Self {
albedo: [0.60, 0.63, 0.67],
roughness: 0.40,
metallic: 0.0,
}
}
pub fn crater_floor() -> Self {
Self {
albedo: [0.30, 0.29, 0.28],
roughness: 0.85,
metallic: 0.01,
}
}
}