Why does the editor crash when changing texture scalability from medium to high? Using UDIMs virtual texture streaming

When changing the texture quality in editor, PIE, or in a standalone test the engine crashes with this error:

Fatal error: [File:D:/Build/++UE4+Licensee/Sync/Engine/Source/Runtime/RenderCore/Private/RenderingThread.cpp] [Line: 855] 
Rendering thread exception:
Assertion failed: BlockWidthInTiles > 0u [File:D:/Build/++UE4+Licensee/Sync/Engine/Source/Runtime/Renderer/Private/VT/VirtualTextureSystem.cpp] [Line: 420] 



0x00007ffd0f2d3e49 KERNELBASE.dll!UnknownFunction []
0x00007ffc790deb46 UE4Editor-Core.dll!UnknownFunction []
0x00007ffc790e1f28 UE4Editor-Core.dll!UnknownFunction []
0x00007ffc78e6e53d UE4Editor-Core.dll!UnknownFunction []
0x00007ffc78df97b5 UE4Editor-Core.dll!UnknownFunction []
0x00007ffc78dfbaf0 UE4Editor-Core.dll!UnknownFunction []
0x00007ffc6e80e3a0 UE4Editor-Renderer.dll!UnknownFunction []
0x00007ffc7691ff3f UE4Editor-Engine.dll!UnknownFunction []
0x00007ffc76937bad UE4Editor-Engine.dll!UnknownFunction []
0x00007ffc7696f530 UE4Editor-Engine.dll!UnknownFunction []
0x00007ffc6e55c69b UE4Editor-Renderer.dll!UnknownFunction []
0x00007ffc6e54ed1e UE4Editor-Renderer.dll!UnknownFunction []
0x00007ffc6e54f347 UE4Editor-Renderer.dll!UnknownFunction []
0x00007ffc6e62e453 UE4Editor-Renderer.dll!UnknownFunction []
0x00007ffc762e4225 UE4Editor-Engine.dll!UnknownFunction []
0x00007ffc762fcbd8 UE4Editor-Engine.dll!UnknownFunction []
0x00007ffc762fe3cd UE4Editor-Engine.dll!UnknownFunction []
0x00007ffc78c187d8 UE4Editor-Core.dll!UnknownFunction []
0x00007ffc78c18aa3 UE4Editor-Core.dll!UnknownFunction []
0x00007ffc9a04f892 UE4Editor-RenderCore.dll!UnknownFunction []
0x00007ffc9a0553d4 UE4Editor-RenderCore.dll!UnknownFunction []
0x00007ffc7910050b UE4Editor-Core.dll!UnknownFunction []
0x00007ffc790f7ee0 UE4Editor-Core.dll!UnknownFunction []
0x00007ffd10476fd4 KERNEL32.DLL!UnknownFunction []
0x00007ffd1155cec1 ntdll.dll!UnknownFunction []

The Skeletal mesh uses a UDIM that is set up to be 2x4 1024 texture maps. Virtual texture streaming is enabled as well.

UPDATED

I installed debugger symbols and got this

Fatal Error:

Assertion failed: BlockWidthInTiles > 0u [File:D:/Build/++UE4+Licensee/Sync/Engine/Source/Runtime/Renderer/Private/VT/VirtualTextureSystem.cpp] [Line: 420]

UE4Editor_Core!AssertFailedImplV() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Core\Private\Misc\AssertionMacros.cpp:100]
UE4Editor_Core!FDebug::CheckVerifyFailedImpl() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Core\Private\Misc\AssertionMacros.cpp:450]
UE4Editor_Renderer!FVirtualTextureSystem::AllocateVirtualTexture() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Renderer\Private\VT\VirtualTextureSystem.cpp:420]
UE4Editor_Engine!FMaterialRenderProxy::AllocateVTStack() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Engine\Private\Materials\MaterialShared.cpp:2300]
UE4Editor_Engine!FMaterialRenderProxy::EvaluateUniformExpressions() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Engine\Private\Materials\MaterialShared.cpp:2352]
UE4Editor_Engine!FMaterialRenderProxy::UpdateDeferredCachedUniformExpressions() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Engine\Private\Materials\MaterialShared.cpp:2558]
UE4Editor_Renderer!FPrimitiveSceneInfo::CacheMeshDrawCommands() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Renderer\Private\PrimitiveSceneInfo.cpp:220]
UE4Editor_Renderer!FPrimitiveSceneInfo::AddStaticMeshes() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Renderer\Private\PrimitiveSceneInfo.cpp:550]
UE4Editor_Renderer!FPrimitiveSceneInfo::AddToScene() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Renderer\Private\PrimitiveSceneInfo.cpp:712]
UE4Editor_Renderer!FScene::UpdateAllPrimitiveSceneInfos() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Renderer\Private\RendererScene.cpp:4033]
UE4Editor_Engine!<lambda_5b722a40972cf3fb98161bec545a6a93>::operator()() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Engine\Private\Components\ActorComponent.cpp:122]
UE4Editor_Engine!TEnqueueUniqueRenderCommandType<`UpdateAllPrimitiveSceneInfosForScenes'::`2'::UpdateAllPrimitiveSceneInfosCmdName,<lambda_5b722a40972cf3fb98161bec545a6a93> >::DoTask() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\RenderCore\Public\RenderingThread.h:195]
UE4Editor_Engine!TGraphTask<TEnqueueUniqueRenderCommandType<`UpdateAllPrimitiveSceneInfosForScenes'::`2'::UpdateAllPrimitiveSceneInfosCmdName,<lambda_5b722a40972cf3fb98161bec545a6a93> > >::ExecuteTask() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Core\Public\Async\TaskGraphInterfaces.h:849]
UE4Editor_Core!FNamedTaskThread::ProcessTasksNamedThread() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Core\Private\Async\TaskGraph.cpp:692]
UE4Editor_Core!FNamedTaskThread::ProcessTasksUntilQuit() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Core\Private\Async\TaskGraph.cpp:587]
UE4Editor_RenderCore!RenderingThreadMain() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\RenderCore\Private\RenderingThread.cpp:341]
UE4Editor_RenderCore!FRenderingThread::Run() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\RenderCore\Private\RenderingThread.cpp:473]
UE4Editor_Core!FRunnableThreadWin::Run() [D:\Build\++UE4+Licensee\Sync\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:86]
1 Like

I have the same issue, also 4.25.
The only solution I found for now was to deactivate Virtual Textures, even though it’s not exactly a good solution…

Same issue on 4.25. Virtual textures are enabled, I have one asset with 7 UDIMs. I just noticed Scalability was set to Medium although I’m pretty sure I didn’t set it myself. Tried to change it to High and editor crashed with the same error.

Are we the only 3 people in this community who have this issue?

A possible but very unnecessary and sometimes even not at all applicable workaround would be to delete the asset having UDIMs from the level → Save the project → exit → open it back again → change Scalability → Save → Drop the asset back in the level. I did that and it worked, but I don’t imagine doing this if I have many such assets.

Unfortunately, unless you modify a specific line in the source version of UE 4.25, your best bet is to upgrade to UE 4.26. Which I did and was the only way I was able to no longer have this issue.

Upgrading to 4.26 fixed the issue, although there was no way to fix it in 4.25.

I am using 4.27 and still seeing the same error. Only when packaged though.

1 Like

Still crashing in 5.3 on my laptop :stuck_out_tongue: maybe it’s related to limited memory? Anyhow, I’ve found that loading empty map makes it possible to switch scalability without crashing.