Skip to content

Release 0.0.10

Choose a tag to compare

@Alexander-Aue-Johr Alexander-Aue-Johr released this 30 May 19:41
· 3 commits to main since this release

Keep avatar animations alive during deinitialization.

Animation data is very memory-heavy, so character deinitialization was changed
to release animation controllers, clips, models and templates for deinitialized
characters. This works for NPCs because they are properly reinitialized when
they are re-added from a saved state.

Avatars are handled differently by the engine when checkpoint savegames are
loaded. They can be deinitialized when the old scene state is cleared, but they
do not go through the same reinitialization path as NPCs afterwards. As a result,
clearing their animation/model data caused missing animations when a checkpoint
restore triggered scripted avatar animations, such as the confuse animation
applied to all avatars at the start of the mind game in Grimnir's boss battle.

Move the animation cleanup from Character.Deinitialize to
NonPlayerCharacter.Deinitialize so NPCs still release their large animation data,
while avatars keep the animation resources they need throughout the active game.