pastthepixels / InfiniteShooter

A simplistic shooter made with the Godot engine.
https://pastthepixels.itch.io/infiniteshooter
GNU General Public License v3.0
18 stars 3 forks source link

Feature request: Add "FPS Limit" option to the settings menu #1

Closed Frizy13 closed 2 years ago

Frizy13 commented 2 years ago

Is your feature request related to a problem? Please describe. I think the frame limit is an important option because it allows you to remove unnecessary load from the GPU. For example, it makes no sense to play at 200 fps if your monitor only allows 60.

Describe the solution you'd like You can add an additional option to the "Graphics" section of the settings.

Describe alternatives you've considered Unfortunately, I haven't come up with an alternative.

If possible, provide any screenshots or mockups of your intended feature image

Additional context

pastthepixels commented 2 years ago

Sounds good to me! I hear that in Godot 3.5 you'll be able to put a limit on the frame rate of the physics engine too, so when that comes out I might add that as a setting too. I have to release a patch pretty soon for the game since I just realized the key mapping is broken, so I'll try to add this alongside my fix for it.

Frizy13 commented 2 years ago

It looks like such a feature is already in the engine. As the documentation says, "To change the number of iterations of physics during runtime, use Engine.iterations_per_second". If this is not what you need, please correct me.

pastthepixels commented 2 years ago

Yeah, I looked it up and it is indeed already a thing. I was probably thinking of physics interpolation, which should help to make things look less janky should the physics engine refresh at a slower rate than things are drawn. But although a separate settings to cap the FPS of the physics engine can be added now, I miiiiight just be lazy and use this as an excuse not to add a separate FPS cap for the physics engine until Godot 3.5...

pastthepixels commented 2 years ago

Just merged some code for this with branch 0.4.0! (Well, actually, that was a couple of hours ago...) Anyway, it's set for InfiniteShooter 0.4.1!