Disabling Paper2D causes crash with

Just loaded up my project with my plugged in after updating to 4.17 and found that it was crashing!

After a few hours of investigating I found that the cause was that paper 2D depends on the ‘LevelEditor’ module and disabling it means that it doesn’t get loaded in time for the InitializeHMDDevice() method in UnrealEngine.cpp.

One catch is that it won’t crash with default project settings! The offending line is @L2351 ‘HMDDevice->EnableStereo(true);’
which is only called if you enable bStartInVR.

Reproduction steps:

  1. Create a new project.
  2. Disable Paper2D plugin.
  3. Enable ‘Start in VR’ project setting
  4. Start project with SteamVR and a

Temporary fixes:

Go into your .uproject and set Paper2D to enabled

or

Go into DefaultGame.ini and set bStartInVR=False

Crash stack:

Assertion failed: ModuleManager.IsModuleLoaded(ModuleName) [File:D:\Build\++UE4+Release-4.17+Compile\Sync\Engine\Source\Runtime\Core\Public\Modules/ModuleManager.h] [Line: 259] Tried to get module interface for unloaded module: 'LevelEditor'

UE4Editor_Core!FDebug::AssertFailed() [d:\build\++ue4+release-4.17+compile\sync\engine\source\runtime\core\private\misc\assertionmacros.cpp:349]
UE4Editor_UnrealEd!FModuleManager::GetModuleChecked<FLevelEditorModule>() [d:\build\++ue4+release-4.17+compile\sync\engine\source\runtime\core\public\modules\modulemanager.h:259]
UE4Editor_UnrealEd!UEditorEngine::GetActiveViewport() [d:\build\++ue4+release-4.17+compile\sync\engine\source\editor\unrealed\private\playlevel.cpp:3493]
UE4Editor_SteamVR!FindSceneViewport() [d:\build\++ue4+release-4.17+compile\sync\engine\plugins\runtime\steam\steamvr\source\steamvr\private\steamvrhmd.cpp:56]
UE4Editor_SteamVR!FSteamVRHMD::EnableStereo() [d:\build\++ue4+release-4.17+compile\sync\engine\plugins\runtime\steam\steamvr\source\steamvr\private\steamvrhmd.cpp:1129]
UE4Editor_Engine!UEngine::InitializeHMDDevice() [d:\build\++ue4+release-4.17+compile\sync\engine\source\runtime\engine\private\unrealengine.cpp:2353]
UE4Editor_Engine!UEngine::Init() [d:\build\++ue4+release-4.17+compile\sync\engine\source\runtime\engine\private\unrealengine.cpp:922]
UE4Editor_UnrealEd!UEditorEngine::InitEditor() [d:\build\++ue4+release-4.17+compile\sync\engine\source\editor\unrealed\private\editorengine.cpp:575]
UE4Editor_UnrealEd!UEditorEngine::Init() [d:\build\++ue4+release-4.17+compile\sync\engine\source\editor\unrealed\private\editorengine.cpp:863]
UE4Editor_UnrealEd!UUnrealEdEngine::Init() [d:\build\++ue4+release-4.17+compile\sync\engine\source\editor\unrealed\private\unrealedengine.cpp:73]
UE4Editor!FEngineLoop::Init() [d:\build\++ue4+release-4.17+compile\sync\engine\source\runtime\launch\private\launchengineloop.cpp:2665]
UE4Editor_UnrealEd!EditorInit() [d:\build\++ue4+release-4.17+compile\sync\engine\source\editor\unrealed\private\unrealedglobals.cpp:76]
UE4Editor!GuardedMain() [d:\build\++ue4+release-4.17+compile\sync\engine\source\runtime\launch\private\launch.cpp:150]
UE4Editor!GuardedMainWrapper() [d:\build\++ue4+release-4.17+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:134]
UE4Editor!WinMain() [d:\build\++ue4+release-4.17+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:210]
UE4Editor!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:253]

Hello KnightArchitects,

After doing some digging I was able to find that this is a known issue. I have provided a link below to the public tracker. Please feel free to use the link provided for future updates.

Link: Unreal Engine Issues and Bug Tracker (UE-42791)

Make it a great day