Search Issue Tracker
Fixed in 5.4.0
Votes
0
Found in
5.4.0b13
Issue ID
784423
Regression
No
Crash in SplatDatabase::GetBasemap() and assert errors appear after deleting asset files, when GameView without Camera is active
Prerequisites:
Download 'The Wasteland' package from Asset Store (https://www.assetstore.unity3d.com/en/#!/content/48802).
Steps to repro:
1. Open Unity on OSX;
2. Create new project;
3. Import 'The Wasteland' package;
4. In the Project folder go to 'Assets -> The Wasteland Package -> Demo_Scenes';
5. Launch any scene from the demo scenes folder;
6. Notice that on OSX lightmap baking process starts right after launching scene and finishes just in a few moments;
8. Select Scene view tab;
9. Double click on any gameobject in the Hierarchy view;
10. Scroll out and move/rotate the viewpoint in the Scene view;
11. Click Game view tab - notice that 'No Cameras Rendering' text is displayed (important step in the repro!);
12. In the Project tab delete 'The Wasteland package' folder (either by pressing Delete button or by right mouse click - Delete option).
Actual result:
Unity crashes and weird asserts errors appear in the console (see attached gif video and actual.png screenshot):
'renderer.terrain->GetTerrainData ().IsValid ()
UnityEditor.SceneView:OnDisable()'
On Windows 10 only errors appear without crash. However, the bug behaviour may vary through different Windows versions and hardware settings.
Last calls obtained from the stacktrace:
#0 0x0000010225987a in SplatDatabase::GetBasemap() const
#1 0x0000010225b654 in SplatMaterials::GetSplatBaseMaterial() const
#2 0x00000102587af7 in RenderAllTheObjects(GIRenderType, dynamic_array<AlbedoRendererObject, 4ul> const&, eRenderTextureType)
#3 0x00000102586f3e in RenderObjects(eRenderTextureType, int, int, dynamic_array<AlbedoRendererObject, 4ul> const&, GIRenderType, Image&)
#4 0x0000010258716b in RenderAlbedo(int, int, dynamic_array<AlbedoRendererObject, 4ul> const&, ColorRGBA32*, int, int, GIRenderType, bool, ChartMask const*)
#5 0x000001025995d4 in UpdateAlbedo(Geo::GeoGuid const&, bool, bool)
Expected result:
- Unity should not crash when removing asset files when Game View tab when no camera rendering is active;
- Assert errors should not appear after removing asset files from Project tab (this might be a separate bug though).
Notes:
- This bug's behaviour varies between different operational systems. On OSX 10.11.3 both error and crash reproduce, on Windows ONLY assert errors WITHOUT crash reproduce. Possible reason of this lies in inconsistent behaviour of lightmap baking process, e.g. when opening Wasteland scene on OSX - the lightmap starts and finishes in several seconds, while on Windows full lightmap cycle is started and it takes much more time (in this case, when deleting asset files, Editor doesn't crash);
- Reproducible in: 5.4.0b13, 5.4.0b12, 5.3.4p1;
- From the first sight this bug might be triggered by either Terrain or GI lightmapping engine issue;
- Crash doesn't repro when Game View tab is not active (in this case only errors are shown).
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Articulation Body with 'Revolute' Joint Type has erratic behavior when Upper Limit is set to above 360
- WebGL Player fails to render Scene when Terrain with Detail Mesh is added and WebGPU Graphics API is used
- Inconsistent errors are logged when different types are passed into the Query "Q<>" method in UIToolkit and the ancestor VisualElement is null
- Crash on GetMaterialPropertyByIndex when opening a specific Scene
- Discrepancies in the styling are present when using a TSS file instead of a USS file in custom EditorWindow
Add comment