public virtual void LoadFromXElement(XElement root) { //this could probably be improved by making a static function for vector3... somehow lol... //remember method extension =P x.x Position = new Vector3(); Position = Position.loadFromXElement(root.Element("Position").Element("Vector3")); Origin = new Vector3(); Origin = Origin.loadFromXElement(root.Element("Origin").Element("Vector3")); Rotation = new Vector3(); Rotation = Rotation.loadFromXElement(root.Element("Rotation").Element("Vector3")); ModelResourceName = root.Element("ModelResourceName").Value; }