I’ve run into a performance problem in the editor related to UNavRelevantComponent.
When a component updates its navigation modifiers every frame (via RefreshNavigationModifiers) and Navigation visualization is enabled (toggled with P), each frame on the GPU thread ends up calling SceneRender twice.
Is there a way to avoid this behavior other than disabling Navigation visualization?
Thanks for the detailed report and repro project. I was able to reproduce the behavior on my side and confirmed it occurs both in UE 5.6.1 (launcher) and in a recent source build from the Main P4 stream.
I’ll do some further investigation on this and follow up with you soon.
After digging into Unreal Insights, I can confirm the double SceneRender happens only when Navigation visualization (P) is on and your UMyNavRelevantComponent updates nav modifiers as the pawn moves. In that state the editor renders an extra view family to build hit proxies for the nav debug geometry, so you see two SceneRender calls per GPU frame. This appears to be expected editor behavior when Navigation visualization is active and those primitives are changing every frame.
For performance testing, please turn off Navigation visualization when playing in PIE mode. If you still need the component active, consider throttling RefreshNavigationModifiers or calling it only when the actor’s bounds actually change by a meaningful amount. It might also be worth to double-check whether you really want to refresh on every transform.