• Hey! Guest! The 39th GMC Jam will take place between November 26th, 12:00 UTC and November 30th, 12:00 UTC. Why not join in! Click here to find out more!

What is the best room speed for optimal frame rate?

D

Daniel2210

Guest
I've been working hard on a project this past month and have been trying to make it look as professional as possible, so one of the things I did was change the speed of each of the rooms from the default of 30 to 60, since 60 fps seems to be the golden standard for games nowadays. I noticed after experimenting with room speed a bit, however, that I can actually increase the frame rate past 60 fps. Since I'm not too far in my game's development, should I rebalance everything to account for a higher room speed and fps? Or is anything past 60 overkill? Also, does a higher room speed cause there to be more frame rate drops? Thanks in advance for anyone who can help me.
 
T

TheJJGamer

Guest
I usually set my room speed to 60. If you leave it at 30 then your game wont exceed 30fps in that room, and since most games are at 60fps now you should probably set them to 60.
 
A

Aura

Guest
I would personally not suggest going above 60 if you can.

https://en.wikipedia.org/wiki/Refresh_rate

https://en.wikipedia.org/wiki/Frame_rate

First of all, you won't want the game logic to run more than 60 times per second. Plus a very high frame rate might not look good on older machines. If the frame rate is larger than the refresh rate of the machine, various frames would be skipped; that won't be the smoothest experience. You might also face issues like screen tearing which can be fixed by using V-sync, but that would affect the game performance heavily. So try to use a versatile frame rate that is likely to run flawlessly on most machines. You might have to go even lower if you target mobile platforms. But that might require a game logic revision anyway.
 

RangerX

Member
60 is indeed the golden standard and probably forever will be. The movement is so smooth and natural that 99,9% of people wouldn't notice if you game ran even faster than that. Heck, there's still a bunch of people that are already comfortable at 30 fps.
 

seanm

Member
I don't want to play any reaction heavy game at less than 120 fps. I turn down my graphics quality in Overwatch just so I can maintain 120. However most AAA games are using delta timing. Don't lock your game to 120 fps.

120fps simply allows for more responsive input than 60fps.
Both the increased volume of frames, and the increased rate of input polling make a massive difference.
 
R

renex

Guest
Just keep testing your game on an older machine during development, and experiment with the sync settings if things go weird.

Specifically, alternate sync and sleep margin.

But do use 60.
 

TheBroman90

Member
Specifically, alternate sync and sleep margin.
I recently learned about this "sleep margin" and that I should set it to 10 instead of 1 for higher fps in my .exe file.
When sleep margin was 1 I got 40 fps. At 10 I get 58-60 fps, so maybe I should set it to an even higher number?
But how do you know what you should set it to and at what point is the number too high?
 

RangerX

Member
In my opinion there's isn't much to care about. 60fps will look wonderful with v-sync on (without messing with the sleep marging settings) and 99% of people aren't using other methods of image synchronisation.
Your game isn't having much reasons to not run 60fps except not being optimised properly or because of you wanting it to run on old mobile devices.
 

TheBroman90

Member
Your game isn't having much reasons to not run 60fps except not being optimised properly
My real fps is 1000-2000 and I have 60 fps when I run the game inside Game Maker.
And like I said, I got higher fps in my .exe file when setting the sleep margin to 10. But it's still not a solid 60 fps even though the real fps is a lot higher.
 
I

Insanebrio

Guest
I don't want to play any reaction heavy game at less than 120 fps. I turn down my graphics quality in Overwatch just so I can maintain 120. However most AAA games are using delta timing. Don't lock your game to 120 fps.

120fps simply allows for more responsive input than 60fps.
Both the increased volume of frames, and the increased rate of input polling make a massive difference.
Youre right but games like Overwatch are not made with an engine but with pure language or have their own engine. Game maker studio is made to be simple to use and cut developing time, but its not optimized like pure language (for example, all variables has max space, you dont have to set their size, all instances has tons of built in vars that also does stuff over time that in many cases are useless for advanced users, even unused events takes cpu since the instance has to check if the event has to run). With game maker studio you cant reach those resoults, if you can make a complex engine run fine at 60 fps you already made a good job.
 
Last edited by a moderator:

TheBroman90

Member
You you have 2000fps real with 60room speed and you set 120room speed, than your fps real wont go to 1000, they will be much lower.
I'm not sure I understand your point.

My problem is that I get a solid 60 fps inside Game Maker (room speed 60, real fps 1000-2000)
but in my .exe file it's less than 60 fps.

Setting sleep margin to 10 instead of 1 helped, but it's still not enough.
 
C

CaffeineJunky

Guest
Most monitors are set to display at 60Hz. Being able to support this is essentially the low-end target. If you want to try and target higher values, that is fine, but you should use the room_speed variable to normalize things. (i.e speed should be 240 / room_speed instead of 4).
 

JackTurbo

Member
When it comes to fps my biggest priority is that its stable.

60+ fps is great but if a game is having dips down to 35-45 on the reg, then that to me is a problem and I'll run half V-synch and lock it to 30 where possible.

Thats because the dips are more noticeable and immersion breaking for me than having the fps lower but stable.

Don't get me wrong I'm not a fan of 30fps, but I can get used to it if I have too (which thankfully is rare).

As for over 60fps, I dont think going over makes that much difference most of the time but that may be because of the types of games that I like, but again the up and down of the frame rate as it varies is noticeable.

Take SMITE as an example, I can get 250+ fps most of the time but in team fights it can drop as low as 80, that isnt a difference I can really see, but it is one that I can feel for sure. So for consistency I prefer to play with v-synch on, locking it to a rock solid 60fps.

With all this said however this is an issue that is pretty divisive amongst the PC community, so if twitch reactions are required for your game then being able to run high framerates would only be a plus. Conversely though I doubt anyone would hold it against a indie game if it were locked at 60.
 
I'm no expert on the tech stuff. As a player I'm prefectly happy with 60fps but I'm not playing any very fast paced games like overwatch. If you target mobiles however you might consider 30fps for a completely other reason: I've read that your game will use more battery power on 60fps than 30fps and some of your customers will care about that. I've never tested it but it does sound kinda logic to me. So if you plan to publish on mobiles you might want to go with 30fps to target some older mobiles and use up less energy as well.
 
R

renex

Guest
In games like Minecraft where I have fine control over frame rate I've had better syncing with the game trying to achieve 70+ fps with vsync on. Trying this on GM8 using manual screen refreshing worked for most pcs, but an intel graphics machine struggled to keep up and just choked on itself at 30 to 45 on a blank test game, while otherwise performing fine with no tearing (forced hardware vsync?).

Studio can't control syncing like that, but from previous experience with other games, having something as low as 61 for room speed and using alternate sync with margin 1 generates pretty satisfactory results.
 

SQGTDev

Member
room_speed=9999, vSync enabled, and delta_time used.

This will ensure that your game will run at the monitors actual refresh rate, no tearing, and will run at the same speed on any system.

If you run your game at a room_speed of 60 and your monitors refresh rate is actually 59.95 FPS (which is more common than you'd think), you can cause a small bottleneck in the renderer (assuming vSync is enabled of course).
I like this idea, but don't higher room speeds increase the amount of CPU the game uses? I imagine a room_speed of 9999 would be drastically higher compared to 60.
 

TheouAegis

Member
but an intel graphics machine struggled to keep up and just choked on itself at 30 to 45 on a blank test game, while otherwise performing fine with no tearing (forced hardware vsync?).
If you get 30fps with vsync, make sure you don't have any surfaces. I got 60fps when running a game with just the application surface, but the moment I added a second surface for effects it dropped to 30.
 
Top