#[derive(Debug, Clone, Copy, PartialEq)]
pub struct PbrMaterial {
pub albedo: [f32; 3],
pub roughness: f32,
pub metallic: f32,
}
impl PbrMaterial {
pub fn sulfur_plains() -> Self {
Self {
albedo: [0.85, 0.75, 0.20],
roughness: 0.70,
metallic: 0.0,
}
}
pub fn lava_flow() -> Self {
Self {
albedo: [0.10, 0.08, 0.07],
roughness: 0.95,
metallic: 0.02,
}
}
pub fn so2_frost() -> Self {
Self {
albedo: [0.90, 0.92, 0.95],
roughness: 0.35,
metallic: 0.0,
}
}
}