#[derive(Debug, Clone, Copy, PartialEq)]
pub struct PbrMaterial {
pub albedo: [f32; 3],
pub roughness: f32,
pub metallic: f32,
}
impl PbrMaterial {
pub fn pristine_ice() -> Self {
Self {
albedo: [0.95, 0.96, 0.98],
roughness: 0.20,
metallic: 0.0,
}
}
pub fn tiger_stripe() -> Self {
Self {
albedo: [0.85, 0.87, 0.90],
roughness: 0.55,
metallic: 0.0,
}
}
pub fn cratered_north() -> Self {
Self {
albedo: [0.88, 0.89, 0.91],
roughness: 0.70,
metallic: 0.01,
}
}
}