diff --git a/src/model/mod.rs b/src/model/mod.rs index e85d92c..159f6e7 100644 --- a/src/model/mod.rs +++ b/src/model/mod.rs @@ -102,7 +102,7 @@ pub struct Model { pub materials: HashMap, /// Map associating the name of a texture and the real texture. - pub textures: HashMap, Vector3)>, + pub textures: HashMap>, /// The list of parts of the model. pub parts: Vec, @@ -544,15 +544,15 @@ impl Model { /// Builds the SrgbTextures for rendering. pub fn build_texture_for_material(&mut self, material: &Material, renderer: &Renderer) { - if let Some((path, size)) = material.textures.get("map_Kd") { + if let Some((path, _)) = material.textures.get("map_Kd") { let texture = renderer.make_texture(path); // Don't need to insert multiple times the same texture - self.textures.entry(path.to_owned()).or_insert((Rc::new(texture), *size)); + self.textures.entry(path.to_owned()).or_insert(Rc::new(texture)); }; } /// Returns the rendering texture. - pub fn get_texture_by_name(&self, name: &str) -> Option<&(Rc, Vector3)> { + pub fn get_texture_by_name(&self, name: &str) -> Option<&Rc> { self.textures.get(name) } @@ -562,7 +562,7 @@ impl Model { } /// Returns a ref mut to the table of textures. - pub fn textures_mut(&mut self) -> &mut HashMap, Vector3)> { + pub fn textures_mut(&mut self) -> &mut HashMap> { &mut self.textures } } diff --git a/src/renderer.rs b/src/renderer.rs index 0ebd676..5659d74 100644 --- a/src/renderer.rs +++ b/src/renderer.rs @@ -181,8 +181,8 @@ impl Renderer { fn get_texture_of_part<'a>(&self, model: &'a Model, part: &Part) -> Option<(&'a SrgbTexture2d, Vector3)> { if let Some(ref material_name) = part.material_name { if let Some(ref material) = model.materials.get(material_name) { - if let Some((texture, _)) = material.textures.get("map_Kd") { - if let Some((texture, size)) = model.get_texture_by_name(texture) { + if let Some((texture, size)) = material.textures.get("map_Kd") { + if let Some(texture) = model.get_texture_by_name(texture) { Some((texture, *size)) } else { None