如何获得子实体在bevy中的绝对位置?
How to get the absolute position of a child entity in bevy?
我正在使用 Bevy 游戏引擎。
在 Bevy 中将变换传播给子项的功能很方便,但是当我在游戏中执行碰撞检查时,我一直在使用对象的 Translation
来计算其位置。现在我的场景中有一些父子层次结构,每个子实体的 Translation
是相对于其父实体的。
有没有办法获取实体相对于世界原点的位置,而不是实体的父级?
“世界”位置存储在 GlobalTransform
组件中。内部变换是 4x4 矩阵,其中 translation()
函数 returns 位置。您可以这样访问它:
fn system(global_transform: &GlobalTransform) {
let position = global_transform.translation();
}
我正在使用 Bevy 游戏引擎。
在 Bevy 中将变换传播给子项的功能很方便,但是当我在游戏中执行碰撞检查时,我一直在使用对象的 Translation
来计算其位置。现在我的场景中有一些父子层次结构,每个子实体的 Translation
是相对于其父实体的。
有没有办法获取实体相对于世界原点的位置,而不是实体的父级?
“世界”位置存储在 GlobalTransform
组件中。内部变换是 4x4 矩阵,其中 translation()
函数 returns 位置。您可以这样访问它:
fn system(global_transform: &GlobalTransform) {
let position = global_transform.translation();
}