0.8.19.34421 - Bugfixes for new issues due to rigorous resource cleanup and more
A bunch of bugfixes for the things broken after the introduction of more rigorous cleanups to fix memory/resource leaks and improve memory usage. Should hopefully fix all the major problems reported, let me know if you find some more. A few unrelated bugfixes as well.
[h2]Bugfixes:[/h2]
- Removed expensive (and unecessary) Unity resource cleanup when closing a world, causing Neos to freeze up for a second or two (based on report by @Alex from Alaska)
- Fixed exceptions when trying to register change of component update order when it was already disposed
- Fixed user respawning not working correctly (based on report by @Turk )
- Fixed invalid encoding of string primitves starting with '@' symbol, preventing worlds or items with those from being saved (reported and sample model provided by @EroSensei)
Following were discovered in log from @Coffee (should fix issues reported by @Groxxy and @Turk):
- Fixed AudioStreams throwing exceptions if read during/after world disposal
- Fixed static asset providers continuing load process after they have been disposed, potentially leading to asset resource leak
- Added guard to brushes, which prevents from trying to add new points if the currently drawn mesh has been destroyed in the meanwhile
- Disposed components that didn't go through the destroy process are now handled as removed as well (will evaluate to null in references)
-- This fixes certain bugs where they're accessed when they shouldn't be
-- This should fix dynamic bones randomly breaking due to invalid accesses when evaluating colliders
- Fixed logix driver nodes being evaluated after they were already destroyed
- Fixed FocusManager throwing exceptions on events after it has been disposed

[h2]Bugfixes:[/h2]
- Removed expensive (and unecessary) Unity resource cleanup when closing a world, causing Neos to freeze up for a second or two (based on report by @Alex from Alaska)
- Fixed exceptions when trying to register change of component update order when it was already disposed
- Fixed user respawning not working correctly (based on report by @Turk )
- Fixed invalid encoding of string primitves starting with '@' symbol, preventing worlds or items with those from being saved (reported and sample model provided by @EroSensei)
Following were discovered in log from @Coffee (should fix issues reported by @Groxxy and @Turk):
- Fixed AudioStreams throwing exceptions if read during/after world disposal
- Fixed static asset providers continuing load process after they have been disposed, potentially leading to asset resource leak
- Added guard to brushes, which prevents from trying to add new points if the currently drawn mesh has been destroyed in the meanwhile
- Disposed components that didn't go through the destroy process are now handled as removed as well (will evaluate to null in references)
-- This fixes certain bugs where they're accessed when they shouldn't be
-- This should fix dynamic bones randomly breaking due to invalid accesses when evaluating colliders
- Fixed logix driver nodes being evaluated after they were already destroyed
- Fixed FocusManager throwing exceptions on events after it has been disposed


