My project experiences a significant drop in frame rate after being left running for half an hour. The information I captured through Unreal Insights shows that the processing time per frame in the GameThread is very long, with the majority of the time being consumed by UWorld_SendAllEndOfFrameUpdates.
Below is a screenshot of the issue:
Could this be caused by Niagara particles? I have a Niagara Ribbon used to display the movement trajectory of Actors.
Here’s the content of my Niagara particles:
I’m retrieving the world coordinates of an Actor in its tick() function for each frame and storing them in a TArray. I then use UNiagaraDataInterfaceArrayFunctionLibrary::SetNiagaraArrayVector(GetNiagaraComponent(), TEXT(“TrackPositionArray”), arrPoint); to populate these coordinates into Niagara to generate a trajectory Ribbon.