19 Commits

Author SHA1 Message Date
Martin Felis
ecf3b0fef2 Substantial performance improvements by refactoring AnimationData allocations.
AnimationData is now a buffer and a hashmap with offsets of the TrackValues. During graph initialization all used TrackValues get registered and their offsets computed.

AnimationData should now be allocated by the AnimationDataAllocator. It takes care of pooling already allocated AnimationDatas and also has a buffer block that contains the default values making it fast to allocate a new AnimationData with the initial pose / default values.
2026-01-16 15:27:33 +01:00
Martin Felis
0e38a2ef65 Minor performance improvements. 2026-01-16 09:54:59 +01:00
Martin Felis
a5577eceea Added profiling statements to SyncedAnimationGraph. 2026-01-16 09:53:18 +01:00
Martin Felis
3bb0725e3e Properly applying both translation and rotation to bones. 2025-12-31 20:30:28 +01:00
Martin Felis
810c6bd9d7 Access node parameter values directly instead of keeping a copy in SyncedAnimationGraph. 2025-12-31 16:39:29 +01:00
Martin Felis
1fca7cfe88 Initial support for animation graph parameters editable in the editor. 2025-12-31 13:47:45 +01:00
Martin Felis
46f940a67c Added Blend2 node (no syncing, yet). 2025-12-27 16:27:54 +01:00
Martin Felis
e09995c3fa Initial support of actual blend tree evaluation. 2025-12-19 10:53:19 +01:00
Martin Felis
5880dde6ec WIP: refactored test to use a fixture, started working on Blend Tree evaluation. 2025-12-08 22:47:00 +01:00
Martin Felis
1732ecb8bd Added simple unit test that uses an AnimationSamplerNode and a procedural animation. 2025-12-05 17:20:35 +01:00
Martin Felis
757c5ee51c Using AnimationSamplerNode for evaluation.
Known issues:
- It seems that only rotations are applied.
- Memory is likely not properly freed.
2025-12-03 22:43:24 +01:00
Martin Felis
f5893df6b0 Removed unused animation_tree reference. 2025-12-03 21:58:44 +01:00
Martin Felis
b754bc061f Removed code that needed private access to AnimationMixer. 2025-12-03 21:09:25 +01:00
Martin Felis
5dfd44d52a WIP 2025-11-23 18:14:02 +01:00
Martin Felis
6f8a580e26 WIP 2025-11-22 16:45:05 +01:00
Martin Felis
9947ee7526 Debug sampling of an animation works. Though extremely experimental/explorative. 2025-11-21 12:42:45 +01:00
Martin Felis
c642fa2a04 Added demo, otherwise WIP.
Also needs AnimationMixer to be modified such that SyncedAnimationGraph is a friend class of AnimationMixer.
2025-11-21 12:28:54 +01:00
Martin Felis
9a9adfbfb4 Deriving SyncedAnimationGraph from Node instead of Mixer for easier prototyping. 2025-11-16 21:06:39 +01:00
Martin Felis
15bcc60da9 Initial commit 2025-11-09 17:22:44 +01:00