I don’t use or need these layers but enabling any one of these causes massive amount of lag. It makes the CPU frametime go from normal 3ms to consistant 10-15ms and there are spikes every 30-60 seconds where it jumps to 150ms+ for few frames.
What is strange is that pressing the steam VR button on the controller to open the steam window makes the frametime to go back down to normal.
The unreal insights tells me that the problem is STAT_FEngineLoop_Tick_PollGameDeviceState
so in the PollGameDeviceState()
there is this:
for( auto DeviceIt = ExternalInputDevices.CreateIterator(); DeviceIt; ++DeviceIt )
{
(*DeviceIt)->Tick( TimeDelta );
(*DeviceIt)->SendControllerEvents();
}
So I assume that the engine sees the layers and ticks the devices that don’t even exist… idk
When you comment out this code, the lag goes away but you can’t use your VR controllers anymore.
Do I really have to tell the player somehow in the mainmenu to go disable the extra OpenXR layers to fix the lag? Or is there away to block them in the engine?
I use OpenXR, all hand tracking, eye tracking etc plugins are disabled.