Search Issue Tracker
Won't Fix
Votes
0
Found in [Package]
2.0.0-preview.1
Issue ID
1263940
Regression
No
Memory leaks when generating Auto Weights for a specific sprite in Skinning Editor
Reproduction steps:
1. Open the attached project ("1263940.zip")
2. Open "CharacterTest" scene
3. Select "CaveMinerSkeleton_T" GameObject
4. Open Sprite Editor (Window -> 2D -> Sprite Editor)
5. In Sprite Editor window change mode to Skinning Editor (can change it in the upper left corner of the window)
6. Select "Auto Weights" in Weights tab and click "Generate All"
Expected result: Even if it takes more memory to generate weights, the memory should drop down to the same amount that was used before generating weights
Actual result: When generating weights, memory consumption can rise up to 7GB and after the weights are generated, Unity still uses about 3GB, where before the generation it was using less than 1GB
Reproducible with: 2018.4.26f1 (2.2.0-preview.3), 2019.3.16f1 (3.2.3), 2019.4.6f1 (3.2.3), 2020.1.0f1 (4.2.4), 2020.2.0a19 (5.0.0)
I couldn't downgrade the package lower than 2.0.0-preview.1 to test since older versions throw compilation errors when the package is installed in an empty project.
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- “Remove Unused Overrides” available on not loaded Scene and throws “ArgumentException: The scene is not loaded” warning
- Adaptive Probe Volume occlusion edge is calculated incorrectly when viewing probes near geometry edges
- Sampling a texture using an HLSL file throws shader errors and the code does not compile
- "Graphics.CopyTexture called with null source texture" error when Base Camera of an Overlay Camera is removed with DX11 Graphics API and Compatibility Mode enabled
- WebGL sends wrong value with large numbers when SendMessage function is used
Resolution Note:
After investigation, the memory used during weights generation is reserved by the editor after usage and not a leak. To 'reset' the memory usage, you can trigger a domain reload eg by enter/exit playmode.
The high memory usage is due to trying to generate weights; however it is possible that the generation can fail. In those cases, user will have to manually paint the weights.