diff --git a/editor/src/world.rs b/editor/src/world.rs index ce4c61f..f187b11 100644 --- a/editor/src/world.rs +++ b/editor/src/world.rs @@ -94,12 +94,7 @@ impl World { pub fn flush_dirty_objects(&mut self) { let mut stack = self.root_objects.to_owned(); while let Some(parent) = stack.pop() { - let parent: &mut Object = self - .world - .entry(parent) - .unwrap() - .into_component_mut() - .unwrap(); + let parent: &mut Object = self.get_component_mut(parent); if parent.children_dirty { parent.children_dirty = false; @@ -109,14 +104,10 @@ impl World { if parent.dirty { parent.dirty = false; - let transform = parent.transform.to_mat4(); + let mat4 = parent.transform.to_mat4(); for entity in parent.entities.to_owned().into_iter() { - self.world - .entry(entity) - .unwrap() - .get_component_mut::() - .unwrap() - .transform = transform; + let transform: &mut cyborg::scene::Transform = self.get_component_mut(entity); + transform.transform = mat4; } } }