godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
89.77k stars 20.9k forks source link

AnimationTree fails resolving track on node with unique name (%) #92574

Open yythlj opened 4 months ago

yythlj commented 4 months ago

Tested versions

4.3.dev.custom build master today

System information

window10 gd4.3.dev.custom build

Issue description

scene\animation\animation_mixer.cpp:663 - AnimationMixer: 'anim/unarmed-swim-idle', couldn't resolve track: '%GeneralSkeleton:RightUpperLeg'. This warning can be disabled in Project Settings. (User)

image image

To make this node reusable by multiple different model scenes, I made it a separate scene and set an empty skeleton and animationplayer with %naming, the animationplayer loads external animation lib so it can be used for animation tree node editing

However, this would trigger an error and it takes a long time to load every time.

Steps to reproduce

create A scene import the glb with animation player,and create a animationtree for it.then save the animation tree as a branch scene.

Minimal reproduction project (MRP)

1.open player/roles/male_warrior/MaleWarrior.tscn remove animationtree node reinstance a RoleAnimationTree scene on it .and see the error

2.open assets/models/male_warrior/male_warrior.glb select load pose to use external animlib and select assets/anim.res, see another error(can not pick bindbones animlib.Even man.glb and male_warrior.glb its the same bone map)

yythlj commented 4 months ago

and because the old bug feature.different scene use the branch animationtree scene.the node on the animationtree will effect both.so I must set every node on the animation tree and the animation tree branch scene checked on the local to scene.that do a stupid work.every tscn contain the animation tree branch scene will has many node val on itself.

akien-mga commented 4 months ago

Could you provide a minimal reproduction project that triggers the issue right away? This would make debugging and fixing the issue much easier than having to try to manually reproduce what you describe.

yythlj commented 4 months ago

mini.zip

@akien-mga