refactor(spatial): use clearer to understand global transform
This commit is contained in:
@@ -116,10 +116,12 @@ impl Spatial {
|
|||||||
*self.transform.lock()
|
*self.transform.lock()
|
||||||
}
|
}
|
||||||
pub fn global_transform(&self) -> Mat4 {
|
pub fn global_transform(&self) -> Mat4 {
|
||||||
match self.get_parent() {
|
let parent_transform = self
|
||||||
Some(parent) => parent.global_transform() * *self.transform.lock(),
|
.get_parent()
|
||||||
None => *self.transform.lock(),
|
.as_deref()
|
||||||
}
|
.map(Self::global_transform)
|
||||||
|
.unwrap_or_default();
|
||||||
|
parent_transform * self.local_transform()
|
||||||
}
|
}
|
||||||
pub fn set_local_transform(&self, transform: Mat4) {
|
pub fn set_local_transform(&self, transform: Mat4) {
|
||||||
*self.transform.lock() = transform;
|
*self.transform.lock() = transform;
|
||||||
|
|||||||
Reference in New Issue
Block a user