2D Frame Rate - Acceptable Speeds

Started by
10 comments, last by 2dcoder 18 years, 10 months ago
I'm working on some 2D games, and ofcourse I download alot of games. :) It seems most of the 2D games I download, run anywhere from 20-30fps on my intel extreme onboard card. (2ghz cpu) Granted these games have alot of sprites, alpha blending, scaling, rotation, etc. They still are playable, just curious if this is the norm with a modern 2D game with lots of fx, to run at 20-30 fps. Even the Tourqe 2D games/demos I've played run at the same speeds. What's wierd is, my own games that I code run at faster frame rates. Usually at refresh rate. (60fps). So, if I bump up the fx in my game (particles, explosions, lots of eye candy) and the game drops to 20-30 fps, is this ok?
Advertisement
Quote:Original post by 2dcoder
I'm working on some 2D games, and ofcourse I download alot of games. :) It seems most of the 2D games I download, run anywhere from 20-30fps on my intel extreme onboard card. (2ghz cpu) Granted these games have alot of sprites, alpha blending, scaling, rotation, etc. They still are playable, just curious if this is the norm with a modern 2D game with lots of fx, to run at 20-30 fps.


There's a good chance that they are limiting their FPS to 30. One reason to do this is to make sure the game plays the same on newer hardware. For example, if you take a game written 10 years ago (maybe for a 100mhz cpu) that doesn't limit it's FPS, it will run so fast on a new computer that it will be unplayable (unless it was programmed with time based logic, rather than FPS).

Quote:So, if I bump up the fx in my game (particles, explosions, lots of eye candy) and the game drops to 20-30 fps, is this ok?


You can survive at 30 fps (movies at the theaters are 24), but my understanding is that many developers now shoot for at least 60.

Where you can get into problems is if the complexity of a scene changes. A game that is designed to run at 60 fps but has scenes that take more than 1/60th of a second to draw, your framerate in some area might drop to 30 fps, while be 60 in other areas.
There's a brief talk about this in The OpenGL Programmer's Guide (i'm sure you can also find some info about this on the web).
Quote:Original post by 2dcoder
So, if I bump up the fx in my game (particles, explosions, lots of eye candy) and the game drops to 20-30 fps, is this ok?

Depends on what type of game it is.

In a very fast action game, a high fps is needed to make the game responsive enough to play, whereas in something like an RTS, the framerate can drop to 15 fps or even lower before it's a problem (unless you have a lot of fast action in your RTS :p).

John B
The best thing about the internet is the way people with no experience or qualifications can pretend to be completely superior to other people who have no experience or qualifications.
Quote:Original post by Will F
Quote:Original post by 2dcoder
I'm working on some 2D games, and ofcourse I download alot of games. :) It seems most of the 2D games I download, run anywhere from 20-30fps on my intel extreme onboard card. (2ghz cpu) Granted these games have alot of sprites, alpha blending, scaling, rotation, etc. They still are playable, just curious if this is the norm with a modern 2D game with lots of fx, to run at 20-30 fps.


There's a good chance that they are limiting their FPS to 30. One reason to do this is to make sure the game plays the same on newer hardware. For example, if you take a game written 10 years ago (maybe for a 100mhz cpu) that doesn't limit it's FPS, it will run so fast on a new computer that it will be unplayable (unless it was programmed with time based logic, rather than FPS).


13+ years ago, games were written to work at a specific CPU clock frequency, and would squeeze as much out of the hardware as possible. Of course, back then we were seeing 1-10Mhz increments in CPU speed per year, and we had the good ol' turbo switches, so we could manually underclock the PC to a playable level if we needed to.

Eventually though, developers started getting wise and making all their animation time-based instead of fps based. I havn't seen a fps/clock-based game since the early 90's. Locking the fps would serve no purpose in this regards.

The only reason I see for locking the fps would be to give the CPU more time to work on other things in a multithreaded environment, like game physics.

Quote:Original post by Will F
Quote:So, if I bump up the fx in my game (particles, explosions, lots of eye candy) and the game drops to 20-30 fps, is this ok?


You can survive at 30 fps (movies at the theaters are 24), but my understanding is that many developers now shoot for at least 60.

Where you can get into problems is if the complexity of a scene changes. A game that is designed to run at 60 fps but has scenes that take more than 1/60th of a second to draw, your framerate in some area might drop to 30 fps, while be 60 in other areas.
There's a brief talk about this in The OpenGL Programmer's Guide (i'm sure you can also find some info about this on the web).


In addition to this, here's a decent article about fps values which talks about why theaters use 30fps, tv's 60 and games beyond that, and how they relate to how the human eye works. It's a bit dated, but still relevant.
Quote:Original post by pragma Fury
Eventually though, developers started getting wise and making all their animation time-based instead of fps based. I havn't seen a fps/clock-based game since the early 90's. Locking the fps would serve no purpose in this regards.



I've seen a few games in the not so recent past that are frame-based but mostly hobby stuff (nothing commercial).

Background: Frame-based animation is a system in which the game world is updated one iteration each frame. This is the easiest system to implement, and the way many new programmers do it.

Since 2dcoder had downloaded the games, I just wanted to point out one possibility. But yeah, making your animation time based is a much smarter way to go.

If anyone's interested here's a tutorial about some ways to do animation.

Also, I found a link to the info in the OpenGL programmer's guide here. Though, the link is to an older edition of the book.
I was just wandering... what is the point in blitting graphics as fast as possible (over 100 fps) while the geme logic is set to something like 10-30 fps. Is it just to test your hardware how fast can it blit a ndered frame?

If so, why players always say: I feel game running at 60fps appears to be more responsive than at 30fps?

I don't really understand that
A commonly used technique is to lock the game logic/physics timestep and interpolate between frames when rendering, thats why. But yeah, in such a situation, only real purpose is to show off your computers penis size.
Im using time based movement so if the game runs at 20-30-60fps, it's all pretty much the same visually except for the object movement is not as smooth ofcourse at the lower frame rates.
Quote:Original post by ursus
I was just wandering... what is the point in blitting graphics as fast as possible (over 100 fps) while the geme logic is set to something like 10-30 fps. Is it just to test your hardware how fast can it blit a ndered frame?

If so, why players always say: I feel game running at 60fps appears to be more responsive than at 30fps?

I don't really understand that


Well because it is. 30fps vs 60fps in video games
Quote:Original post by 2dcoder
I'm working on some 2D games, and ofcourse I download alot of games. :) It seems most of the 2D games I download, run anywhere from 20-30fps on my intel extreme onboard card. (2ghz cpu) Granted these games have alot of sprites, alpha blending, scaling, rotation, etc. They still are playable, just curious if this is the norm with a modern 2D game with lots of fx, to run at 20-30 fps.

Even the Tourqe 2D games/demos I've played run at the same speeds.

What's wierd is, my own games that I code run at faster frame rates. Usually at refresh rate. (60fps).

So, if I bump up the fx in my game (particles, explosions, lots of eye candy) and the game drops to 20-30 fps, is this ok?


hmm hmm.. interesting. My two little eurocents.. the thing that speed a 2D game down are - large, full 32 bit colored quads (such as a background). Even a 500 Mhz CPU can handle a heck of a LOT of floating point calculations, collision detection routines, but if the graphics card is let's say 16 mb and the screen is 1024 x 768 and 32 bit color you'll not get real smooth framerates (even if the game is programmed in a decent way).

This topic is closed to new replies.

Advertisement