Crash : Assertion failed: FVector::Distance(Initializer.ViewRotationMatrix.GetScaleVector(), FVector::OneVector) < (1.e-4f)

Way to reproduce : Happening when in editor we navigate with the camera in editor + right mouse bouton (very often, and very fast if we do a “long use” of camera navigation).

Engine suddently crash with this assert.

Engine : UE4.26 Epic Launcher

   Assertion failed: FVector::Distance(Initializer.ViewRotationMatrix.GetScaleVector(), FVector::OneVector) < (1.e-4f) [File:D:/Build/++UE4/Sync/Engine/Source/Runtime/Engine/Private/SceneView.cpp] [Line: 479]
    
UE4Editor_Core!AssertFailedImplV() [D:\Build++UE4\Sync\Engine\Source\Runtime\Core\Private\Misc\AssertionMacros.cpp:102]
UE4Editor_Core!FDebug::CheckVerifyFailedImpl() [D:\Build++UE4\Sync\Engine\Source\Runtime\Core\Private\Misc\AssertionMacros.cpp:458]
UE4Editor_Engine!FViewMatrices::Init() [D:\Build++UE4\Sync\Engine\Source\Runtime\Engine\Private\SceneView.cpp:479]
UE4Editor_Engine!FViewMatrices::FViewMatrices() [D:\Build++UE4\Sync\Engine\Source\Runtime\Engine\Private\SceneView.cpp:607]
UE4Editor_Engine!FSceneView::FSceneView() [D:\Build++UE4\Sync\Engine\Source\Runtime\Engine\Private\SceneView.cpp:657]
UE4Editor_UnrealEd!FEditorViewportClient::CalcSceneView() [D:\Build++UE4\Sync\Engine\Source\Editor\UnrealEd\Private\EditorViewportClient.cpp:1153]
UE4Editor_UnrealEd!FLevelEditorViewportClient::CalcSceneView() [D:\Build++UE4\Sync\Engine\Source\Editor\UnrealEd\Private\LevelEditorViewport.cpp:1938]
UE4Editor_UnrealEd!FEditorViewportClient::Draw() [D:\Build++UE4\Sync\Engine\Source\Editor\UnrealEd\Private\EditorViewportClient.cpp:3872]
UE4Editor_Engine!FViewport::Draw() [D:\Build++UE4\Sync\Engine\Source\Runtime\Engine\Private\UnrealClient.cpp:1559]
[22:29]
UE4Editor_UnrealEd!UEditorEngine::UpdateSingleViewportClient() [D:\Build++UE4\Sync\Engine\Source\Editor\UnrealEd\Private\EditorEngine.cpp:2154]
UE4Editor_UnrealEd!UEditorEngine::Tick() [D:\Build++UE4\Sync\Engine\Source\Editor\UnrealEd\Private\EditorEngine.cpp:1849]
UE4Editor_UnrealEd!UUnrealEdEngine::Tick() [D:\Build++UE4\Sync\Engine\Source\Editor\UnrealEd\Private\UnrealEdEngine.cpp:426]
UE4Editor!FEngineLoop::Tick() [D:\Build++UE4\Sync\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:4834]
UE4Editor!GuardedMain() [D:\Build++UE4\Sync\Engine\Source\Runtime\Launch\Private\Launch.cpp:169]
UE4Editor!GuardedMainWrapper() [D:\Build++UE4\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:137]
UE4Editor!WinMain() [D:\Build++UE4\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:268]
UE4Editor!__scrt_common_main_seh() [d:\agent_work\5\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
kernel32

No solution at this day, except removing the assertion in unreal source code itself.

Fun fact : look like this error is back since yesterday, as many people got it again.

yes, and how… simply remove it.

No downside or anything for the moment, working fine.

No problem dude, Unfortunally to be able to do this, you should edit the unreal engine source and compile yourself the engine.

In theory, just simply remove the line from the file (SceneView.cpp [Line: 479]), then recompile the engine.

In fact… you need to know how to do this to be able to do it.
I suggest you to contact the technical lead of your company.

Hi, did you find a way to solve this I am having the same problem ?

wait will removing the assertion stop the editor from crashing. And if so what are the dowsnides of doing that and how can I do it ? This is extremely important for me to solve and thank you for the quick answer.

Great ! solving this would save me literally hundreds of hours of rework, unfortunately I am not very good at this and don’t really wanna break anything could you maybe give me a bit more specifics - where to go and what to look for to delete (folders files etc), or maybe if that is not asking too much give me your discord and work me through this - I will be so grateful for this :slight_smile:

Right click on the level in content browser. it should load for a second, try after that
This works. I have used it 2 times now on different projects that I had worked on for a while.

Unfortunally not working.

The “fix” i found was to remove the assert from UE4 engine source.

Yep this doesn’t work :confused:

So final solution :

On a custom UE build (4.27)
Change line 499 of SceneView.cpp (Engine/Source/Runtime/Engine/Private/SceneView.cpp)

//check(FVector::Distance(Initializer.ViewRotationMatrix.GetScaleVector(), FVector::OneVector) < KINDA_SMALL_NUMBER);
Compile your own build of unreal engine

(Just add the both //), it will skip the assertion, everything working fine after this.

Hello, how to find SceneView.cpp? I dont have any SceneView.cpp files on my computer, i tried to find it through windows search, no one disk has such file, how to find it and edit?