Jump to content

Game Performance Information


johnnyboy88

Recommended Posts

Posted

I was in a discussion on the S.T.E.P. forums earlier about different types of Anti-Aliasing. It evolved into a little somthing more. I thought I'd share some information with you all that may help you get better performance and smooth out your gameplay.

 

The following link should help dispell a lot of myths and sort out most confusion:
(Including the "minimum" fps and "maxium what the human eye can see" myths)
http://www.tweakguides.com/Graphics_1.html

Refresh rates do NOT affect FPS. They are two separate and distinct things.

FPS = Frames per Second = How many distinct individiual images or frames a GPU outputs, per second

Refresh Rate = Number of times a screen is capable of DISPLAYING or redrawing, per second
(FYI, even if your monitor is capable of 120Hz refresh, and a lot of LCDs are, WindowsOS or your Hardware connection type, may be capping it at 60Hz)

Even if you have a static 2D image your monitor is still refreshing or redrawing 60 or 120 or whatever times every second.

So, if your fps is less than your refresh rate, say 19fps, those 19 frames are just getting redrawn several times.

And if your fps is higher than your refresh rate say 200fps, and your monitor is 60Hz refresh rate, then you're only displaying 60 images per second, because your monitor can't refresh/redraw/change it's crystal state fast enough to display it.

 

And this is where Vsync comes into play.
Because if your graphics card is outputing 200fps and your monitor can only display 60 you get what's called screen tearing. Vsync is what prevents the Tearing.

Vsync caps the maximum number of frames to the moniters refresh rate, so enabling Vsync on a 120Hz moniter would cap FPS at 120 FPS instead of the normal 60.

Now, let's step backward a second. If your refresh rate is 60Hz and your fps is anything lower than that, and you have Vsync enabled; It is possible that Vsync can reduce your framerate significantly. Because Vysnc slaves your grahics card to your monitor.

Your graphics card only sends frames from the framebuffer when the monitor tells it to. Which is between each individual refresh. If your graphics card misses completing a frame it has to wait until the next reshresh to send it. So it sits idle and wait to send the next frame. This results in half the framerate whenever you fall below the refresh rate.

So as long as your fps is higher than your monitors refresh Vsync will not reduce framerate. But if your fps is lower than your refresh rate Vysnc can reduce your framerate further.

Nvidia has an Adaptive Vsync that can be enabled to automatically disable Vysnc if your fps falls below your monitors refresh rate. It will only be enable if your fps exceeds your refresh.

Nvidia also has a Smooth Vsync option for SLI and when fps is below your monitors refresh rate. It is suppose to help with micro stutters. It locks in the sustainable framerate of your game and only increases it if the performance move is sustainable above the refresh of your monitor. It does lower average framerate but "smoothes" it out.

 

You can turn Vsync off in Skyrimprefs.ini
[Display]
// 0 = off
// 1 = on
// 2 = reduced fps cap
iPresentInterval=0

I recommend turning it off in Skyrimprefs and use your drivers to control your vsync settings and if you want an fps limiter as well, Nvidia control panel has one, ENB includes it, as well as other tools like MSI Afterburner via RiverTuner settings.

FYI, if you use enb. It also has a Vsync setting so check that out as well. If you're using your driver control panel all software options have to be disabled.

This is where Triple Buffering comes into play.
Tripple Buffering will add an extra frame buffer so your graphics card doesn't have to wait for the next refresh to keep working. It will start to fill the 3rd frame buffer with an image and then once the monitor refreshes and syncs up with the graphics card, it will rotate the framebuffers sending the 1st one to display, the 2nd to the 1st, and the 3rd to the 2nd.

The problem with adding an extra framebuffer is that it requires additional VRAM. So if you're using HighRes textures, Anisotropic Filtering, and AntiAliasing; you may have increased stuttering or hitching as your textures are swapped out.

 

While Nvidia supports this natively through driver settings ATI only support Native Triple Buffering for OpenGL.

To enable Triple Buffering for Direct3D you have to use separate programs.

 

ATI Tray Tools

http://radeon.ru/downloads/att/

or

D3Doverrider
http://www.guru3d.com/content_page/rivatuner.html

 

D3Doverrider comes packaged with RivaTuner which is for Nvidia but D3Doverrider still works with ATI

 

 

Input Lag
Unlike a movie, you actually control the camera in a game. The lower your FPS the more 'laggy' your on-screen interactions will feel. This also adds to the perception of certain framerates being inadequate.

The most common fix is to raise your fps. Control lag is simply what happens when your graphics card struggles to keep up and the resulting frames go slightly out of sync with input commands.

There is no precise or magic fps level. 23fps make look terrible but 24fps may look smooth. The fact is, everyone is going to perceive things differently. If it looks and feels smooth to you, then you're getting enough. But someone else may not agree.

As for other possible "fixes"? You'll have to play with your vsync and tripple buffering settings to see what is smooth for you. And if various combinations of those don't work. You'll have to reduce the load on your graphics card by reducing your graphics mods to increase your fps.

 

Nvidia has an option called Maximum Pre-Rendered Frames that can possibly help with mouse lag. Try a setting of 1
http://www.tweakguides.com/NVFORCE_6.html

 

 


Maximum Pre-Rendered Frames:If available, this option - previously known as 'Max Frames to Render Ahead' - controls the number of frames the CPU prepares in advanced of being rendered by the GPU. The default value is 3 - higher values tend to result in smoother but more laggy gameplay, while lower values can help reduce mouse and keyboard lag. However extremely low values such as 0 may hurt performance, so I recommend this option be kept at its default of 3 globally, and only adjusted downwards in specific game profiles. Remember, in most cases mouse lag is due to low framerates, so adjusting this option is not an automatic cure to lag issues, nor should it be the first thing you try. Finally, it only works in DirectX games, not OpenGL



Finally. Skyrim has a setting for mouse acceleration. Try disabling that inside Skyrimprefs.ini
[CONTROLS]
bMouseAcceleration=0

Other options that control input:
[interface]
fMouseCursorSpeed=1.0000

[Controls]
fMouseHeadingSensitivity=0.0125

also try turning off the gamepad if you're not using one.
[MAIN]
bGamepadEnable=0
 

A method to help reduce stuttering and smooth out gameplay:

Combine Adaptive Vsync with Framerate Limiting.

1 - Find a framerate that you will be ABOVE 99% of the time.
- example: If you have a 60Hz monitor and you typically get 35-45 fps set your Adaptive Vsync to "half-refresh rate". This sets your Vsync cap at 30Hz.

2 - Set your Framerate Limiter to 30. This limits your graphics card to rendering a max of 30fps

This syncs both your monitor and graphics cards to your systems performance level. By setting them just below your sustained fps level it will smooth out your gameplay experience.

If you have an uber rig you may be getting over 60fps so using full adaptive sets a 60Hz cap (if you have 60Hz monitor) so use a limiter of 60fps.

If you have a lot of mods installed you may only be getting 24fps so setting the cap at 30 would do you no good. Use "1/3-refresh rate" and cap it at 20fps.

20fps may sound low but, with the smoothness of the gameplay, you will percieve it as feeling much higher.

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...