Как получить абсолютную позицию дочернего объекта в bevy?
Я использую игровой движок Bevy.
Возможность распространять преобразования на детей в Bevy удобна, но когда я выполняю проверку столкновений в своей игре, я использую объект Translation
вычислить его местоположение. Теперь, когда в моей сцене есть иерархия родитель-потомок,Translation
каждого дочернего объекта относительно своего родителя.
Есть ли способ получить положение объекта относительно мирового происхождения, в отличие от родительского объекта?
1 ответ
Решение
"Мировая" позиция хранится в Transform
составная часть. Преобразования представляют собой матрицы 4x4, где ось "w" - позиция. Вы можете получить к нему доступ так:
fn system(transform: &Transform) {
let position = transform.value.w_axis();
}