Search Issue Tracker
Fixed in 5.4.0
Crash in SplatDatabase::GetBasemap() and assert errors appear after deleting asset files, when GameView without Camera is active
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).
Unity crashes and weird asserts errors appear in the console (see attached gif video and actual.png screenshot):
'renderer.terrain->GetTerrainData ().IsValid ()
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)
- 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).
- 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.
- Applied velocity is inconsistent when using Rigidbody AddForce() with ForceMode.VelocityChange
- Crash on AudioUtil_CUSTOM_HasAudioCallback when exiting Play Mode while the Inspector is displaying a GameObject with an empty script attached
- Scroll offset is framerate-dependent when scrolling with velocity in the Device Simulator
- "Object.FindObjectsOfType<T>() is obsolete" warning is thrown when using "Transitions Plus" asset
- [Mono] Crash on SystemNative_ReadDirR() when building for IOS/Android on a macOS machine