Frame Rate Smoothing

Discussion in 'Test Server: Discussion' started by codeForge, Oct 23, 2013.

  1. codeForge

    You will notice on the first OMFG patch that there is a new graphics option, "Smoothing". I invite you all to turn this on and play the game for a bit with it on.

    You'll notice immediately that your frame rate becomes capped, but the purpose of the code is to generate consistent frame rates over a long period, rather than having the frame rate bounce around between low and high values.

    Try it out for a play session or two. Would really like to get your thoughts.

    Of course, for the more technical of you I put in some INI settings you can play around with and I'd like your thoughts on that too.

    In your UserOptions.ini file you can find the section [Rendering] and add the following lines:

    Smoothing=1
    SmoothingMaxFramerate=60
    SmoothingMinFramerate=20


    Smoothing=1 enables the frame rate smoothing, 0 disables it.
    SmoothingMaxFramerate - The game will try to avoid going higher than this frame rate. You can make this higher if you like, but for most people and average monitor refresh rates, 60 is a good number.
    SmoothingMinFramerate - The game will try to avoid smoothing when under this frame rate.

    Smoothing can actually RAISE your frame rate if you have a low-end machine and your CPU or GPU are bogged down. Plus, for those with very fast CPUs smoothing can reduce your CPU heat and power usage.

    As our game becomes less and less CPU-bound and more efficient at using multiple cores, you may find that the frame rate isn't worth the power you're machine is consuming to maintain. We've seen frame rates of 300+ in some cases, and, on a few occasions, over 600.

    Though it may be fun to see such high FPS numbers, it also is rarely maintainable, and you end up watching your frame rate oscillate by as much as 80% in either direction... which then results in a kind of "skippy" play experience that some might find downright annoying.

    The game at 60 or 120fps "smooth" is much more playable than a jittery 200fps.

    We have been and will continue to work on reducing "spikes" in our frame times, but regardless there will always be elements of a PC that are out of our control that cause our frame time to spike. Smoothing helps with this.

    TLDR; try the "Smooth" option and give us feedback.

    Thanks!

    Ryan "codeForge" Elam
    Technical Director, PS2

    (Edit: Added instructions for putting lines into UserOptions.ini)
    • Up x 11
  2. Nepau

    Call me not tech literate but what is the major diffrence with this compaired to the Max FPS setting in the INI?

    Is it that the MaxFPS setting just limits the frames it will try to render, while this new setting has some "Voodoo" that helps eliminate any spikes?

    Other question, does this setting do some active changes to what your system is processing, so in times where it can't maintain the desired fps it stops processing certain actions or items?

    Mainly wondering if there is a possiblity with this that you might find it similer to the Culling we sometimes see on live when the servers are under heavy load.
  3. codeForge

    Smoothing attempts to keep the frame rate similar per frame over the course of multiple frames, while the "MAX" just literally chops the top off your frame rate.
    • Up x 4
  4. Nepau

    Good to know.

    Have to ask if this is attempting this by prerendering frames or a more active role in limiting what is processed to keep the desired rate?

    Mainly wondering so I know what to look for when trying this.
  5. Caldeio

    Say I set it at your base example 60 max 20 min. It limits to 60fps and then between 20-59 it evens out the flow between frames.

    so like 32 33 34 35 34 33 34
    instead of like 32 29 31 37 34 32 36

    Taking out major spikes high and low as outliers of course.
  6. tomahawk72

    Any idea when the test server will be back up codeforge?
  7. codeForge

    We're waiting for unlock now. Should just be a few more minutes, if all goes well. :)
  8. Caldeio

    Awesome ;) I was just gonna check and then go to bed. Glad I refreshed! Now I have a video to record if all goes well in these next few mins.
  9. noobindo

    Looks like it works.
    I get 130 fps in field and a lot of lags in empty outpost. fps drop from 130 to 13, lol.
    Then I turn it on and get stable 50 on the Crown in fight.
    Very strange, but it works.
  10. sicsoo

    So since i have a good cpu and i get min 35-30 usually in big fights and never seen low than 26-27 and i use also MaximumFPS=40 because 40 are enough for me.

    With this Smoothing i need to avoid maximumfps option and use instead

    [Rendering]
    Smoothing=1
    SmoothingMaxFramerate=40
    SmoothingMinFramerate=25

    i guess. let's see.
    good work anyway.
  11. MaCritz

    How do I get that smoothing option in the User Options?? All I get is this..
    [IMG]
  12. Rejemah

    You add the lines yourself. Read the post again.
  13. MaCritz

    My bad, but seriousl I didn't know that I could modify the user options like that.. Lol.. Such a noob..
    • Up x 1
  14. Rejemah

    Don't worry. We've allll been there before
    • Up x 1
  15. codeForge

    It could have been explained better, and we were all newbs once. :)
    • Up x 3
  16. maxkeiser

    Provided this remains an option that can be 'ticked' on or off, this is a good thing. More options are always good.
  17. DeadliestMoon

    Not "always" good. But we get what you mean.
  18. Astealoth

    Played 2 hours of test tonight. First hour no smoothing, second hour with smoothing.

    Played on my low-mid range setup, desktop with core i3 3ghz, 4gb ram, GTS250, win 7 64 bit. I run the low detail preset with 3k render range.

    On live right now I get about stable 40fps in most activities, only have dips in maybe 4+ platoon fights. I get a lot of hitching upon entering new zones, and the hitching is worst within the first 5 minutes of gameplay but tends to not happen at all after 10-20 minutes of being logged in. I tended to be CPU bound.

    On test with no smoothing I got about 75fps in most activities, but it wasn't very smooth, had some random dips that I wasn't used to. Just felt rather all over the place fps wise. Hitching in the first 5 minutes of gameplay while entering a new hex was markedly improved. Barely ever saw CPU bound, but always GPU bound, a polar opposite from live.

    On test with smoothing on I sat at a stable 60 and never dipped the entire time, even with a total reboot. Smoothing works extremely well for me, hitching was about the same. Still present but significantly improved from how it is on live. Just small hiccups in the game when first spawning in at a zone I hadn't been to previously in that play session. With smoothing on test I don't have any CPU or GPU indication, only says 60FPS and nothing else.
  19. Rean

    is it much different from nvidia's adaptive vsync?
  20. Doomzzg

    Barely works.