I've been getting some weird results when I test frames per second in Ren'Py games. The framerate is quite literally all over the place. Anywhere from 3-55 frames per second. Now, I know that Ren'Py 'sleeps' and automatically drops the framerate when it doesn't think it is needed, i.e. on a static screen, etc. and tries to ramp it back up when needed in a way that won't be noticeable.
Most of the time, this seems to work and makes sense - a visual novel displaying static images and advancing one click at a time doesn't need a high frame rate, and perceptually 5 frames per second works as well as 60 frames per second.
However, in games with a lot of input and rapid clicks between screens - i.e. large map interfaces, nested image maps, etc. the responsiveness does NOT feel good. It makes the input feel sluggish.
So, is there a way to turn off the framerate management that Ren'Py is doing? I know I can use:
Code: Select all
renpy.maximum_framerate(t)I'm also curious why even though I am running a Ren'Py game on an Nvidia 980TI, with an i7-4700K CPU, on a solid state drive, with a 60hz monitor (Windows 8.1), none of my tests hit 60 FPS? I should note that these tests have all been on demos that are not of my own creation, just some of the most demanding Ren'Py games I could find, stuff like Hanako Games titles, Jack's Winter Wolves games, and the Pirate Mermaid demo. I don't think any of them have used the latest build of Ren'Py (6.99.13.2919 as of the time of making this post).
As I've stated, my only concern with the framerate is that the response time does not feel good. There is often (not all the time) a perceptible delay between clicking and something happening. While monitoring the framerate, I can see this is when Ren'Py (apparently) does not spin up out of 'sleep mode' quickly enough. Or isn't predicting needing to? I don't know exactly how it works - that's why I'm asking.
Apologies, but the last thread I found on a similar topic was from 2008, and I know Ren'Py has come a very long way in that time and had many changes since then.
Thanks for reading this wall of text. I appreciate any insights on the topic.