Smooth 179 FPS and very low input lag (but in expense of details)

Discussion in 'General Discussion' started by KeiKei, Dec 9, 2012.

  1. KeiKei

    KeiKei Registered

    Joined:
    May 24, 2012
    Messages:
    806
    Likes Received:
    44
    Smooth 179 FPS and very low input lag on 60/75 Hz monitors (in expense of details)

    Quest for the holy grail of graphic settings is about to continue but first let's remind ourselves what different sync options are and what's good and bad about them.

    Sync: Video

    Best rendering quality and smooth framerate. Doesn't cause screen tearing (http://en.wikipedia.org/wiki/Screen_tearing). However it gives massive input lag (http://www.youtube.com/watch?v=9U_3xgWZPz0); graphics system is delaying to show you what has happened so you are always reacting late; you turn too late, you brake too late, slides are almost impossible to control properly, etc. Input lag will make you a lot worse driver than you really are. Period! :) However this only applies to traditional refresh rate monitors like 60 Hz. With high refresh rate monitors like 144 Hz (probably 120 Hz too) things can be very different. Some input lag measurements can be found from here.

    Sync: Software

    Probably somehow syncs game engine to display output. Doesn't seem to add any input lag and gives pretty good framerate. Also pretty lightweight so lots of details can be set high. There seems to be no tearing but some frames are apparently shown at least twice every second or so. Therefore framerate is not completely smooth and many may find it annoying.

    Sync: GPU

    Don't know for sure how this works but it seems like it's blending few frames together. I think it causes screen tearing but by scattering different frames evenly on screen it kind of hides the tearing effect. Also it doesn't seem to add any input lag. However framerate isn't synced with display so it's not perfectly smooth.

    Sync: None

    Framerate is not limited and framerate indicator (while in game press Ctrl+F) can show very high values. Frames created by game's graphics engine are not in sync with display so it causes screen tearing and if framerate is not very high then it doesn't look smooth. Good thing is that it has very low input lag. In the past some beta builds had a slow motion bug related to no sync but I believe it's fixed now.

    Back to the quest...

    All options above contain compromises and unfortunately that's the case for my latest findings too. I think one needs to consider which things are more important over others and put three things in right order; input lag, framerate and level of details. For me the order is first input lag and framerate (don't really know which one is more important) and only third comes details. Why? Because for me rF2 is realistic racing simulation first and realistic view simulation second. If you prefer to put those three things in same order then keep reading...

    So how to achieve smooth framerate (smooth playback without screen tearing) and low input lag with traditional low refresh rate monitors like 60 or 75 Hz? Well actually it probably is impossible but what I found is a way to divide one large tearing into multiple smaller tearings and also move them continuously so one doesn't notify them anymore. Of course small tearings can still be seen when observed closely but I believe tearings are so small that they really don't bother anymore. Also believe you need pretty powerful hardware so needed high framerates can be achieved. And here's how to do it:

    1. Make sure your graphics adapter's settings are set to default values e.g. for nVidia cards go to nVidia Control Panel:
      • Expand 3D Settings
      • Click Manage 3D settings
      • From Global Settings tab
      • Click Restore (if not grayed out) and answer Yes
      • Change to Program Settings tab
      • If you find rFactor 2(rFactor2.exe) from combobox then
      • Select rFactor 2(rFactor2.exe)​
      • Click Restore (if not grayed out) and answer Yes​
      • Close nVidia Control Panel
    2. If you have made graphics related changes directly to \rFactor2\UserData\player\player.pln then make sure to revert them to default values.
    3. Open \rFactor2\UserData\player\player.pln in Notepad or similar text editor and change values for two lines:

      Auto Detail Framerate="182"
      Max Framerate="178.00000"
      • Actually auto detail change is not mandatory but may help keep high framerate
      • NOTE: Max framerate is set 3 times higher (minus 2 frames) than display refresh rate so if e.g. you have 75 Hz then 3 * 75 Hz - 2 = 223
    4. Open rFactor2, click Configure Sim, change Sync to None, click OK
    5. Start Single Player, go to Settings, lower values from tabs Display and Video Res so that framerate doesn't go under max framerate (in this example 178-179) in any situation while driving (don't touch Auto Detail FPS setting if set high in phase 3). FPS can be shown by pressing Ctrl+F while driving. If you can still see tearings and those bother you then try lowering the max framerate step by step even down to 175; it spreads tearings across the screen but playback may not be that smooth anymore.

    High resolution may also help hiding screen tearing so set as high as possible. Here's my current settings if someone finds those useful:

    • Circuit Detail: High
    • Player Detail: High
    • Opponent Detail: Medium
    • Texture Detail: High
    • Texture Filter: Trilinear
    • Special Effects: Low
    • Shadows: Low
    • Shadow Blur: Off
    • Movies: Off
    • Sun Occlusion: No
    • Rain Drops: Yes
    • Road Reflection: Yes
    • Environment Reflection: No
    • Wind and Crowd Motion: No
    • Visible vehicles: 10
    • Mirrors: On :)
    • Steering Wheel: On
    • Auto Detail FPS: 182
    • Resolution: 1920 x 1080 32 bit
    • Refresh Rate: 60 Hz
    • Anti Aliasing: Level 3
    • Sync: Off
    • FXAA: Off
    • High Dynamic Range Imaging: Off

    Unfortunately many nice features had to be turned off or lowered so that high framerate is gained. However I'm still very happy how the game looks and especially how smooth and direct it now is. Who knows maybe high framerates can be achieved with higher details in the future when game is optimized for gold. Also hardwares keep getting faster so it's only a matter of time... and money! :)

    Well if you're not satisfied how the game runs with your current settings then test the above method and please post your opinions about it. Hopefully you'll be as happy as I am!

    If you have bit less powerful machine or don't want to give away so much details then try lowering auto detail and max framerate to:

    Auto Detail Framerate="121"​
    Max Framerate="117.00000"​


    Of course it's not as smooth as 180 FPS and tearing isn't that small but think it's still much better than other available sync options (video, GPU and software). Here's my settings with higher details:

    • Circuit Detail: High
    • Player Detail: High
    • Opponent Detail: High
    • Texture Detail: Full
    • Texture Filter: Trilinear
    • Special Effects: High
    • Shadows: Medium
    • Shadow Blur: Off
    • Movies: On
    • Sun Occlusion: Yes
    • Rain Drops: Yes
    • Road Reflection: Yes
    • Environment Reflection: Yes
    • Wind and Crowd Motion: No
    • Visible vehicles: 10
    • Mirrors: On
    • Steering Wheel: On
    • Auto Detail FPS: 121
    • Resolution: 1920 x 1080 32 bit
    • Refresh Rate: 60 Hz
    • Anti Aliasing: Level 3
    • Sync: Off
    • FXAA: Off
    • High Dynamic Range Imaging: On

    [HR][/HR]
    [HR][/HR]

    Below are few comparision images between 60 and 180 FPS to demonstrate in theory what the impacts for screen tearing and input lag are.

    Rare moment in time when game engine is in same phase with monitor:

    View attachment 5099 View attachment 5096

    This special moment happens rarely. If we look at the meaningful middle part of the screen (where you eyes are while driving) 60 FPS causes 16,7 ms input lag and 180 FPS causes 11,1 ms: 180 FPS has 5,6 ms lower input lag.

    There is no visible screen tearing in 60 FPS but as said before this moment happens rarely. 180 FPS has always screen tearing because screen is divided into 3 or 4 separate parts.

    [HR][/HR]

    About same moment in time but with some phase difference between game engine and monitor which is the case most of the time:

    View attachment 5098 View attachment 5095

    In middle part of the screen 60 FPS causes 22,2 ms input lag and 180 FPS causes 13,0 ms: 180 FPS has 9,2 ms lower input lag.

    [HR][/HR]

    Again about same moment in time but with different phase difference between game engine and monitor:

    View attachment 5097 View attachment 5100

    In middle part of the screen 60 FPS causes 11,1 ms input lag and 180 FPS causes 9,3 ms: 180 FPS has 1,8 ms lower input lag.

    Now there is visible screen tearing in 60 FPS too and compared to 180 FPS the horizontal gap between divided image parts (green dotted line) is considerably wider. This is the reason why in 180 FPS screen tearing doesn't look nearly as bad as in 60 FPS.
     
    Last edited by a moderator: Feb 7, 2013
    1 person likes this.
  2. Golanv

    Golanv Registered

    Joined:
    Nov 7, 2012
    Messages:
    1,041
    Likes Received:
    9
    I'm myself in the middle of finding the right settings for my system, so I get that priority order you mentioned without compromising too much on the looks of things. Kinda trying to have my cake and eat it too, but I know theres sacrifices I have to make eventually, either its money or lowered settings. Either way I will get it done, I just get stuck driving instead of testing graphics options and that has dragged out my project. :rolleyes:

    Ill take your findings and test them out. Good job Rosberg. ;)
     
  3. jtbo

    jtbo Registered

    Joined:
    Jan 12, 2012
    Messages:
    1,668
    Likes Received:
    48
    I keep max framerate 60, monitor refresh rate is 60, so where would extra frames go?

    After I have set that to 60, then I can tune graphics settings, ctrl+c to show cpu load, I attempt to make it so that green bar is close to max at most, if it goes to max, then I'm running out of cpu power to do graphics and get stuttering and choppiness.

    Then with msi afterburner I need to check that I don't use too much gpu ram, as I have only 512mb, I need to often reduce track detail and texture detail.

    Also with msi afterburner I can see gpu load, but for that I need to turn max framerate to 0, then set fps limiter to 60 in msi afterburner and enable gpu load + memory usage on afterburner's osd.

    It takes some adjusting, changing between max framerate and afterburner fps limiter, but this way I can soon get maximum quality out from graphics.

    What I have found out is that shadows even at low, cause 25% increase to my cpu usage (green bar that much longer), also reason why it makes fps unstable and dropping a lot is because cpu runs out of power. I just recently tested this with LRP.

    Then every track and car is different, so for to find out max settings, it needs to be done for all combos, but one could always find combo that is heaviest and adjust details for that, then for rest it would be certainly running well.

    So of course there are tearing, but I hardly notice it unless I look for it and also when I set my details with this method, I get them quite often close to 60 even without limiter, so there is not so much of tearing as could be.

    With this I have also been able to increase resolution of video capturing as there is more power available for that now, but still better details too, only different settings turned down and different settings turned up.
     
  4. SLuisHamilton

    SLuisHamilton Banned

    Joined:
    Jan 22, 2012
    Messages:
    860
    Likes Received:
    20
    Lowering resolution is not a solution. I was thinking in something else, but you have credit because i see uou doing <56.00 in lrp without uphill chicane.
     
  5. DrR1pper

    DrR1pper Registered

    Joined:
    Apr 29, 2012
    Messages:
    3,294
    Likes Received:
    36
    Interesting post. It was not that long ago i discovered video vsync option to be 100% silky smooth and now I need to retest each vsync option (including adaptive vsync in nvidia control panel) again.

    Thanks for the informative material.
     
  6. SLuisHamilton

    SLuisHamilton Banned

    Joined:
    Jan 22, 2012
    Messages:
    860
    Likes Received:
    20
    Yeah, sorry. Thanks for all info about sync software, gpu and cpu. This could be posted in wiki or something
     
  7. KeiKei

    KeiKei Registered

    Joined:
    May 24, 2012
    Messages:
    806
    Likes Received:
    44
    Thanks! But where is JeiJei!?! ;)
     
  8. Golanv

    Golanv Registered

    Joined:
    Nov 7, 2012
    Messages:
    1,041
    Likes Received:
    9
    In jail? :p
     
  9. KeiKei

    KeiKei Registered

    Joined:
    May 24, 2012
    Messages:
    806
    Likes Received:
    44
    With framerate of 60 the screen is formed from two frames (when vertical sync is not used). Topmost is older and bottommost is newer. It's never going to be perfectly sync with game engine and will cause tearing as you said. With 180 FPS the extra frames are right there in the screen - in other words with display refresh rate of 60 Hz and game engine in 180 FPS the screen is divided into 4 parts. Again topmost part is oldest and bottommost newest. This is the reason why in 60 FPS the screen tearing is more noticeable than in 180 FPS. However some find tearing more noticeable than others - it's kind of individual thing.

    But that's not the whole story. With more parts the screen has more new content and therefore recudes input lag. In theory with perfectly synced framerate of 60 FPS in 60 Hz monitor shows one frame and the input lag is 1000 ms / 60 FPS = 16,7 ms. With perfectly synced framerate of 180 FPS in 60 Hz monitor shows three frames (image is divided into 3 parts); topmost has the same input lag 16,7 ms (3 * 1000/180), center part has input lag of 11,1 ms (2 * 1000/180) and bottommost part has input lag of 5,6 ms (1000/180). Since the center part of the screen contains the most important information (cars and track) the outcome is that 180 FPS reduces input lag over 60 FPS at least 5,6 ms - in average probably more.
     
    Last edited by a moderator: Dec 9, 2012
  10. KeiKei

    KeiKei Registered

    Joined:
    May 24, 2012
    Messages:
    806
    Likes Received:
    44
    Actually I said the opposite and think one should use as high resolution as possible. What I said is to lower details.

    Yep lowering input lag is one important key elements of being able to be fast but I think 55,7 is mainly because I have created better car setup. Default setup has huge oversteering and it's virtually impossible to be on the limit all the time. However for educational reasons it's good because it forces driver to concentrate on throttle usage. That's why I haven't posted it to setups thread. :)
     
  11. KeiKei

    KeiKei Registered

    Joined:
    May 24, 2012
    Messages:
    806
    Likes Received:
    44
    Yes I know the video sync is so beautiful but the horrible input lag... please use anything but the sync video! :) The max pre-rendered frames = 1 setting will reduce input lag but I've come to conclusion that it's not enough especially with fast cars.
     
  12. KeiKei

    KeiKei Registered

    Joined:
    May 24, 2012
    Messages:
    806
    Likes Received:
    44
    Actually I think he's in his way to supreme court... :) Well enough about black humor, that was a really sad story back then. Don't drink and operate a boat...
     
  13. taufikp

    taufikp Registered

    Joined:
    Nov 14, 2010
    Messages:
    609
    Likes Received:
    16
    Thanks! I'll try your suggestion! :)
     
  14. SLuisHamilton

    SLuisHamilton Banned

    Joined:
    Jan 22, 2012
    Messages:
    860
    Likes Received:
    20
    I mean graphic details in game menu (like shadows, track details, player, etc..). i think this is not really the problem. I think the main goal is achieve higher graphics levels at minimun and recomended spec systems provided when beta was released.
    This method bypass graphics issues on rf2 to people for better lap times,
     
  15. jtbo

    jtbo Registered

    Joined:
    Jan 12, 2012
    Messages:
    1,668
    Likes Received:
    48
    Nvidia did remove something related to pre-rendered frames, I think that I did use lower setting than now is possible, but without sync at all like I use, that should not bother?

    Sometimes I have seen tearing, when I have attempted to look for it, single line near middle of screen, but it comes and goes, haven't seen that now at all, must try to hunt it again :D

    With my card such high framerates are not so well possible, I would need to reduce details so much that braking markers would disappear and road textures would be blurry mess so that it would be difficult to see track well.

    Sync software and no sync, but limiting fps with afterburner gave me both none of input lag that I could observe, any other sync method seems to add some.

    Oh yes, I think pre-render frames was possible to set 0 before, now I also remember that I used riva tuner to set that to 0 as gfx driver would not allow anymore, kind of work around.

    I would need super high speed camera, how else I'm going to find out 10ms or less difference in input lag, I know there is small change between 1/60 of second, but I doubt that I can spot much less than that. Still it would be nice to have as little as possible.
     
  16. Adrianstealth

    Adrianstealth Registered

    Joined:
    May 28, 2012
    Messages:
    4,578
    Likes Received:
    1,072
    Good post

    Setting graphic settings at a level much lower than the point of fps starting to suffer is a must in a racing sim

    Fluid lag free input is more important

    I try to achieve over 120fps at all times
     
  17. DrR1pper

    DrR1pper Registered

    Joined:
    Apr 29, 2012
    Messages:
    3,294
    Likes Received:
    36
    I think i might just go back to my 120hz CRT monitor. Problem solved. :)
     
  18. samuelw

    samuelw Registered

    Joined:
    Jul 23, 2012
    Messages:
    161
    Likes Received:
    4
    Thanks for the heads up. I had been running video sync and had not noticed any lag, yet switching to no sync resulted in immediate ability to catch the back end of the Skippy. Clearly I had lag of which I was unaware and which negatively affected my driving.
     
  19. KeiKei

    KeiKei Registered

    Joined:
    May 24, 2012
    Messages:
    806
    Likes Received:
    44
    Great example showing the importance of low input lag. It's pretty amazing how big impact it has to one's driving.
     
  20. taufikp

    taufikp Registered

    Joined:
    Nov 14, 2010
    Messages:
    609
    Likes Received:
    16
    I changed VSync option to None (it was set to Video previously), and then, out of curiosity, I also changed my wheel range to 900 degrees, even though I'm using Logitech Momo which only has 270 degrees.

    For the graphic settings, I didn't change much, still using my usual setting (all at High or On), only this time I set Shadow to Low, previously it was set to Medium. I can get 23-49 FPS. Auto detail FPS is set to 25 though, while the Max Frame Rate is 179.

    Driving Skip Barber at LRP, I realized the wheel control is much more better now. More easier than before, the wheel does not feel too sensitive. I am now rarely spin because the car is so easy to drive and my input won't suddenly snap the back like the usual (especially in turn 1).

    Also I didn't notice any screen tearing, maybe because I was pretty occupied with SB and traffic in front of me :D

    Maybe it's because of no input lag and higher wheel range. Driving SB is more fun than before now!
     

Share This Page