You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-09 12:50:35 +00:00
Fix skeleton get_global_transform call before is_inside_tree
This commit is contained in:
@@ -301,7 +301,12 @@ void BoneAttachment3D::on_skeleton_update() {
|
|||||||
if (sk) {
|
if (sk) {
|
||||||
if (!override_pose) {
|
if (!override_pose) {
|
||||||
if (use_external_skeleton) {
|
if (use_external_skeleton) {
|
||||||
|
if (sk->is_inside_tree()) {
|
||||||
set_global_transform(sk->get_global_transform() * sk->get_bone_global_pose(bone_idx));
|
set_global_transform(sk->get_global_transform() * sk->get_bone_global_pose(bone_idx));
|
||||||
|
// Else, do nothing, the transform will be set when the skeleton enters the tree:
|
||||||
|
// Skeleton3D::_notification(NOTIFICATION_ENTER_TREE) -> calls Skeleton3D::_notification(NOTIFICATION_UPDATE_SKELETON)
|
||||||
|
// -> emits skeleton_updated signal -> connected to BoneAttachment3D::on_skeleton_update()
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
set_transform(sk->get_bone_global_pose(bone_idx));
|
set_transform(sk->get_bone_global_pose(bone_idx));
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user