My UE4 Project was working quite well for a number of months. Just recently, it started to drop in FPS straight to ‘0’ then back up to ‘60’+ over a matter of seconds. I have no clue what it could be.
To resolve the issue, I updated the engine and the project to 26.2 from 25.4. That still had no effect.
[Click Here to download an example video][1]
Any ideas as to what the issue is?
My PC specs are listed here: [DxDiag][2]
Here is a performance chart over a period of about a minute:
So, I was able to troubleshoot some performance issues with the way my scenes are laid out.
Using Draw#'s I easily realized that every separate Mesh/Material Is assigned a unique Draw# and Rendered independently. ( I didn’t know that)
I also realized that the GPU will draw meshes even though they are not visible in the scene for each frame. ( I also hadn’t known that)
I was watching this video: How do I make my game faster ? Introduction to GPU profiling : UE4 - YouTube
And he explains that if you were to combine specific meshes into a single Mesh (around 9:25 of the video) The graphics card considers it a single mesh and will draw all of them as one. Which in term will:
A. Lower the total number of assigned draws for each frame
B. Lower latency between each frame and Draw#
C. Increase overall performance
Right now my individual scene is set up so that EVERY mesh is independent of its sibling instance. In other words, they all have their own unique Draw#.
Would this be considered a good start if I were to merge all the actors in my scene to lower the number of total Draw numbers?
To clarify, I still haven’t seen a huge red flag of why my GPU is causing the frames to drop to 0 and then continue, but I feel like this could potentially solve it. Especially if the whole reason behind the crash to ‘0’ FPS is so that the GPU can get caught up in the Frame it’s currently trying to render.