Analyzing causes for suffering frame rate

I find myself in an interesting situation.

In our game we have a fairly large map. It’s detailed but with performance in mind (refrained from using PBR stuff, and the models are optimized as well.)

I’ve always been able to run my game at 120 fps on max settings, and it was fairly smooth for me.

However, when I tested today, it felt as if I was playing on 60 fps or less, even though I was still on 120.

I immediately disabled a few things I thought could be the cause, as it’s been a minute since I’ve tested the game. But, those made no difference at all. Additionally, script activity all looks normal as it did previously.

It did dawn on me if this could possibly be from an engine update, because I really have no recollection of anything I could have changed that would have impacted the frame rate so drastically from 120 fps down to less than 60.

Is there anything I should look for aside from script activity?

Thanks for any insight.

Well I guess my first question would be are you having this same problem in like an empty baseplate? I feel like one of the most likely culprits for something like this is that your display refresh rate somehow got reset to a lower number like mine sometimes do for no reason.

Secondly do you have any hard numbers on actual frame times? Is it consistent or does it jump around a lot?

As for what to look out for aside from script activity there isn’t a lot really to say since it sounds like you’ve already optimized the models and stuff making it likely to be something external (like your graphics drivers being annoying) or an engine update.

1 Like

Roblox has been releasing a few updates that mess with code recently, I had to remove a walking sound system from my game to get it to run properly.
Just like you, nothing seemed out of the ordinary stat-wise, the code for whatever reason just made the framerate jitter a lot.

I’m not sure exactly what in that system caused the jittery framerate, but odds are its something in one of your scripts somewhere.

Just disable a single script and test the game, see if it runs any better and if it does, mark that script down somewhere. Rinse and repeat until you’ve gone through all client scripts.

1 Like