You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix shared content disposal and ability template lifetimes
Fix shared content disposal and character template lifetimes
SharedContentManager now tracks disposable objects created during asset loading
and disposes them when the owning asset is released. Disposable objects that are
the asset itself or one of its direct child assets are removed from the loose
disposable-object list so they remain managed by the reference-counted asset
graph instead of being disposed twice or too early.
This finally allows scene transitions to release GPU/content resources instead
of steadily accumulating them across scenes.
The previously disabled Dispose methods for Character, Avatar, Entity,
NonPlayableCharacter, and CharacterTemplate have been restored. This exposed a
lifetime bug in several abilities, such as Summon Spirit: some ability character
templates were loaded through Game.Content even though character templates are
disposed when a PlayState ends. Game.Content could therefore keep returning
already-disposed template instances with cleared fields or released resources.
Those ability templates are now loaded through PlayState.Content instead, so
their lifetime matches the active level and they are recreated cleanly after
scene transitions.