Odd Stutter in VR Preview when (unrelated) actor blueprint graph is open

Platform: Windows 10, SteamVR, Valve Index @140Hz.

I’m trying to identify the mechanism by which a stutter appears in the VR Preview when a blueprint is open in the background (the pawn blueprint in my case, though it can be reproduced with a brand new actor blueprint that has been closed and re-opened), even when the editor is minimized. The stutter looks like a previous frame, reprojection or tracking going wrong. The chaperone bounds seem to drift relative to the scene (rather than the other way around, which is odd, but might just be perception due to the lack of outside context).

The work-around is obvious: just close the offending blueprint. You can also switch to the viewport of the blueprint after which it’s gone until you re-open the blueprint. But I’d like to understand why this is happening, especially given that it doesn’t seem to show up in profilers. At least not in the places I know where to look.

  • GPU time: ~2.8ms in both cases (according to Steam overlay)
  • CPU GameThread time: ~6.93 (i.e.: it is trying to hold 140hz, with the occasional frame above 7ms, followed by one taking ~5ms), in both cases (according to editor session frontend profiler)
  • Obviously the problem doesn’t exist in stand-alone
  • SteamVR’s motions smoothing on/off does not fix it.
  • Minimizing the editor does not fix it
  • The blueprint does not need to be part of the scene at all, it just needs to be opened to its graph.
  • The number of nodes does not seem to matter.
  • Switching to the Viewport of the blueprint DOES get rid of it… And it doesn’t come back until you close and re-open the blueprint!?!

Any ideas where else I could be looking for the stutter to show up in profilers?

Not sure if this helps, but i had some “mysterious” camera stutter that was caused by two concurrent updates to camera rotation. One was my blueprint, another was some property to orient camera to player character direction.

So something similar may be worth checking.

1 Like

That does sound like it could fit the feel of the stutter, but I can’t figure out how an actor that hasn’t even been spawned could affect the pawn.

Also, I will have to update the description above, as it turns out a camera component isn’t even required. You can create a new actor blueprint, close it, open it again and see the stuttering. Which then disappears if you open the full blueprint editor and open the viewport.