godotengine / godot

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

Animated BoneAttachment3D Performance Impact #92775

Open fabius opened 3 months ago

fabius commented 3 months ago

Tested versions

System information

Godot v4.3.beta1 - NixOS #1-NixOS SMP PREEMPT_DYNAMIC Fri May 17 10:18:09 UTC 2024 - Wayland - Vulkan (Forward+) - dedicated AMD Radeon RX 7900 XTX () - AMD Ryzen 5 7600X 6-Core Processor (12 Threads)

Issue description

Spawning multiple animated Skeleton3D nodes with BoneAttachment3D nodes inside, performance drops way more than it should. (about 50-80% on my rig with 20 skeletons) I'd expect the FPS impact to be less significant than that.

Steps to reproduce

Minimal reproduction project (MRP)

https://github.com/fabius/tps-demo

press space to free all attachments

AThousandShips commented 3 months ago

What 4.3 hash are you using? There's no 4.3-stable yet unless you're a time traveller 😉 please add the sha of the commit you're using (or a pre-release if you're using one)

fabius commented 3 months ago

whoops, sorry, meant to say 4.3 beta. Edited the issue

TokageItLab commented 3 months ago

I believe that 4.3 is somewhat better than 4.2 by https://github.com/godotengine/godot/pull/90575, but I have not yet been able to get proper measurements. We are in the process of planning a benchmake for animation performance.