diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2024-08-30 09:59:59 +0200 |
---|---|---|
committer | Rémi Verschelde <rverschelde@gmail.com> | 2024-08-30 09:59:59 +0200 |
commit | 7f86ca057ac098c2b899cd6ece37055db8cfc979 (patch) | |
tree | 479e12b2c2cabe49e31607be0a3c6ff882ab8d38 | |
parent | acc48797e1cb70bb74939a24ceedff192940f7b5 (diff) | |
parent | 31253257b321aca387fd57db041ca6f0decf8054 (diff) | |
download | redot-engine-7f86ca057ac098c2b899cd6ece37055db8cfc979.tar.gz |
Merge pull request #96308 from SaracenOne/attempt_to_reset_imported_scene
Attempt applying RESET pose during import.
-rw-r--r-- | editor/import/3d/resource_importer_scene.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/editor/import/3d/resource_importer_scene.cpp b/editor/import/3d/resource_importer_scene.cpp index b2795e4984..fa07511dd0 100644 --- a/editor/import/3d/resource_importer_scene.cpp +++ b/editor/import/3d/resource_importer_scene.cpp @@ -3104,6 +3104,19 @@ Error ResourceImporterScene::import(const String &p_source_file, const String &p } } + // Apply RESET animation before serializing. + if (_scene_import_type == "PackedScene") { + int scene_child_count = scene->get_child_count(); + for (int i = 0; i < scene_child_count; i++) { + AnimationPlayer *ap = Object::cast_to<AnimationPlayer>(scene->get_child(i)); + if (ap) { + if (ap->can_apply_reset()) { + ap->apply_reset(); + } + } + } + } + if (post_import_script.is_valid()) { post_import_script->init(p_source_file); scene = post_import_script->post_import(scene); |