Download

Significant framerate drops on certain mesh actors that only happen on a Shipping build

I’m currently using UE4.27 and have an issue where the framerate significantly drops when a particular actor of mine, which uses USplineComponent to generate static meshes along the perimeter of the spline.
I use NewObject() to genereate the new mesh objects. I suspect that the issue may have something to do with how I’m using UStaticMesh but finding out why is difficult.

  • The issue does not occur on PIE, Development, Test builds.
  • Issue only occurs on a Shipping build (Therefore, making it much harder to debug).
  • I suspected that I might be causing too many draw calls, but that can’t quite explain why it only happens on Shipping builds, so it’s probably something else.
  • Lowering the screen resolution does improve the framerate slightly.
  • GPU Utilization is ~10% when the issue is happening, but ~50% when the framerate is good.
  • CPU Utilization is low (~10%) regardless of whether the issue is happening or not.
  • Disk Utilization is low (0-3%) regardless of whether the issue is happening or not
  • There shouldn’t be any Network I/O that would block the game as it’s an offline game.
  • Memory utilization shows plenty of free memory, and I don’t see any sawtooth pattern that may indicate any significant GC.

Anyone have any ideas on what the issue may be, or what I should try to look into to try to figure this out? Any help is appreciated.