headless crash (nullRHI) related to virtual textures

I’m trying to run our game in headless mode, i.e. with the -nullRHI command line argument. It crashes when entering a map that uses Nanite or virtual textures:

LogGlobalStatus: UEngine::LoadMap Load map complete /Game/Maps/GreenIsland/GreenIsland
LogGlobalStatus: UPendingNetGame::TravelCompleted Pending net game travel completed
LogWindows: Error: === Critical error: ===
LogWindows: Error: 
LogWindows: Error: Fatal error!
LogWindows: Error: 
LogWindows: Error: Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x0000000000000020
LogWindows: Error: 
LogWindows: Error: [Callstack] 0x00007ff62fba280d HalfLifeThree.exe!FVirtualTextureSystem::RequestTiles() [C:\UnrealEngine\Engine\Source\Runtime\Renderer\Private\VT\VirtualTextureSystem.cpp:1152]
LogWindows: Error: [Callstack] 0x00007ff632b96a54 HalfLifeThree.exe!`MakeHLODRenderResourcesResident'::`5'::<lambda_1>::operator()() [C:\UnrealEngine\Engine\Source\Runtime\Engine\Private\WorldPartition\HLOD\HLODRuntimeSubsystem.cpp:636]
LogWindows: Error: [Callstack] 0x00007ff632ba8f21 HalfLifeThree.exe!TGraphTask<TEnqueueUniqueRenderCommandType<TRenderCommandTag<`MakeHLODRenderResourcesResident'::`5'::TSTR_MakeHLODRenderResourcesResident633>,`MakeHLODRenderResourcesResident'::`5'::<lambda_1> > >::ExecuteTask() [C:\UnrealEngine\Engine\Source\Runtime\Core\Public\Async\TaskGraphInterfaces.h:1236]
LogWindows: Error: [Callstack] 0x00007ff62b830dfa HalfLifeThree.exe!FNamedTaskThread::ProcessTasksNamedThread() [C:\UnrealEngine\Engine\Source\Runtime\Core\Private\Async\TaskGraph.cpp:760]
LogWindows: Error: [Callstack] 0x00007ff62b8313ce HalfLifeThree.exe!FNamedTaskThread::ProcessTasksUntilQuit() [C:\UnrealEngine\Engine\Source\Runtime\Core\Private\Async\TaskGraph.cpp:651]
LogWindows: Error: [Callstack] 0x00007ff63012e04e HalfLifeThree.exe!RenderingThreadMain() [C:\UnrealEngine\Engine\Source\Runtime\RenderCore\Private\RenderingThread.cpp:414]
LogWindows: Error: [Callstack] 0x00007ff6301315c9 HalfLifeThree.exe!FRenderingThread::Run() [C:\UnrealEngine\Engine\Source\Runtime\RenderCore\Private\RenderingThread.cpp:539]
LogWindows: Error: [Callstack] 0x00007ff62be23378 HalfLifeThree.exe!FRunnableThreadWin::Run() [C:\UnrealEngine\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:149]
LogWindows: Error: [Callstack] 0x00007ff62be16eb7 HalfLifeThree.exe!FRunnableThreadWin::GuardedRun() [C:\UnrealEngine\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:79]
LogWindows: Error: [Callstack] 0x00007fff75aa259d KERNEL32.DLL!UnknownFunction []
LogWindows: Error: 

Using a small no-nonsense example map like the one created by the ThirdPersonExample works.

Is there a way around this that doesn’t come down to “don’t use virtual textures”?