diff --git a/nusamai-plateau/src/appearance.rs b/nusamai-plateau/src/appearance.rs index 02cb35563..9a267d0ac 100644 --- a/nusamai-plateau/src/appearance.rs +++ b/nusamai-plateau/src/appearance.rs @@ -9,7 +9,7 @@ use url::Url; use crate::models::appearance::{self, ParameterizedTexture, SurfaceDataProperty, X3DMaterial}; -#[derive(Debug, Default, serde::Serialize, serde::Deserialize)] +#[derive(Debug, Default, Clone, serde::Serialize, serde::Deserialize)] pub struct Theme { pub ring_id_to_texture: HashMap)>, // TODO: texture index is redundant pub surface_id_to_material: HashMap, @@ -52,7 +52,7 @@ impl Hash for Material { self.ambient_intensity.to_bits().hash(state); } } -#[derive(Debug, Default, serde::Serialize, serde::Deserialize)] +#[derive(Debug, Clone, Default, serde::Serialize, serde::Deserialize)] pub struct AppearanceStore { pub textures: Vec, pub materials: Vec,