summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2024-08-30 09:59:59 +0200
committerRémi Verschelde <rverschelde@gmail.com>2024-08-30 09:59:59 +0200
commit7f86ca057ac098c2b899cd6ece37055db8cfc979 (patch)
tree479e12b2c2cabe49e31607be0a3c6ff882ab8d38
parentacc48797e1cb70bb74939a24ceedff192940f7b5 (diff)
parent31253257b321aca387fd57db041ca6f0decf8054 (diff)
downloadredot-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.cpp13
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);