Framerate and Performance: Difference between revisions

From Vintage Story Wiki
No edit summary
No edit summary
Line 42: Line 42:


<!--T:10-->
<!--T:10-->
3. Vintage Story has a wide range of graphics settings. In the Settings menu, Graphics tab, click "Show all available settings" to see them all. Adjusting these up or down, and switching on or off the fancier elements, can have a huge effect on performance, especially on older or mid-range graphics cards (GPUs). The tooltips on each control on the Graphics settings page should give you some pointers. Switching off Shadows, SSAO and Bloom will have the biggest effect on framerate for most people. Even dropping your Shadows and SSAO from the highest settings down a notch should grant a significant gain in framerate.
3. Vintage Story has a wide range of graphics settings. In the Settings menu, Graphics tab, click "Show all available settings" to see them all. Adjusting these up or down, and switching on or off the fancier elements, can have a huge effect on performance, especially on older or mid-range graphics cards (GPUs). The tooltips on each control on the Graphics settings page should give you some pointers. Switching off Shadows, SSAO and Bloom will have the biggest effect on framerate for most people. Even dropping your Shadows and SSAO from the highest settings down a notch should grant a significant gain in framerate. Some people find that toggling Occlusion Culling helps.


<!--T:24-->
<!--T:24-->
Line 54: Line 54:


<!--T:13-->
<!--T:13-->
5. Make sure your CPU is not overheating and therefore "thermally throttling". If you run Vintage Story with no VSync and unlimited frame rate, it will push one of your CPU cores to 100% permanently. That in turn will cause the CPU internal temperature to rise. You can monitor temperatures using a free 'Hardware Monitor' tool, or just listen to the fan noise ramping up! If the CPU internal temperature is approaching maximum allowed levels (90-100 °C on a modern CPU, that's hot enough to boil water) then the CPU will automatically switch to running slower than its maximum speed, this is "thermal throttling". This will slow down the game's performance. To prevent this thermal issue, use VSync or max frame rate limits to prevent your CPU cores reaching 100% usage - limiting the max frame rate to something sensible like 60fps or 72fps allows the system to rest for a short while between frames, and therefore reduces the chance of overheating. At unlimited frame rates, GPUs can also overheat and thermally throttle, again the solution is a combination of proper cooling of the GPU, and not pushing graphics settings to their max limit.
5. Make sure your CPU is not overheating and therefore "thermally throttling". If you run Vintage Story with no VSync and unlimited frame rate, your GPU and perhaps also one CPU core might be being pushed to 100% permanently. That in turn will cause the CPU and GPU internal temperatures to rise. You can monitor temperatures using a free 'Hardware Monitor' tool, or just listen to the fan noise ramping up! If the CPU internal temperature is approaching maximum allowed levels (90-100 °C on a modern CPU, that's hot enough to boil water) then the CPU will automatically switch to running slower than its maximum speed, this is "thermal throttling". A GPU acts similarly. Either one will slow down the game's performance. To prevent this thermal issue, use VSync or a sensible max frame rate limit, or both, to prevent your CPU and GPU reaching maximum temperature - limiting the max frame rate to something sensible like 60fps or 72fps allows the system to rest for a short while between frames, and therefore reduces the chance of overheating. At unlimited frame rates, GPUs can also overheat and thermally throttle, again the solution is a combination of proper cooling of the GPU, and not pushing graphics settings to their max limit.


<!--T:14-->
<!--T:14-->
Line 60: Line 60:


<!--T:15-->
<!--T:15-->
''(Note that VintageStory does use multithreading for efficient performance. That is why the game runs best on a CPU with 4 cores or more. But the main rendering thread, which is one of the limits on FPS, runs on a single core.)''
''(Note that VintageStory does use multithreading for efficient performance. But not all cores are used equally, the main thread runs on a single core. Windows Task Manager can show the main rendering thread as busy when it is not really busy, on normal game settings the CPU is spending some time each frame just waiting for the GPU to catch up. A third party tool like Open Hardware Monitor can give you a better picture of how the hardware is really being used.)''


<!--T:16-->
<!--T:16-->
Line 168: Line 168:
Other software on your computer, including things installed when the computer was new, can take control of your computer periodically in a way which causes Vintage Story performance to suffer.  Look at this possibility if the game performance is 'normally' good, but there is a short lag spike or stutter every few seconds, or freezes (1-2 seconds or longer).
Other software on your computer, including things installed when the computer was new, can take control of your computer periodically in a way which causes Vintage Story performance to suffer.  Look at this possibility if the game performance is 'normally' good, but there is a short lag spike or stutter every few seconds, or freezes (1-2 seconds or longer).


Especially look out for this type of thing on a new Windows 10 or Windows 11 PC.  Windows is notorious for installing apps and processes which you don't actually need, but take up resources, and your PC manufacturer may have added even more of that (they get paid a few cents for each one).
Especially look out for this type of thing on a new Windows 10 or Windows 11 PC.  Windows is notorious for installing apps and processes which you don't actually need, but take up resources, and your PC manufacturer may have added even more of that (maybe they even were paid to do so?)


For testing and troubleshooting game performance, you should try closing down '''all''' other software and apps while playing the game:
In general, to achieve its normal high performance, Vintage Story makes intensive use of all parts of your system while playing: GPU, CPU, RAM, network in multiplayer. If something is wrong in your system set-up or some other software or app is also using resources, you will likely see that in the form of lag spikes.
 
For testing and troubleshooting game performance, you should try closing down '''all''' other software and apps while playing the game.  If that solves the performance problem, then add things back and see if it's still OK!
* Start by closing your browser, all tabs especially YouTube or other video players.  If you need internet access to look things up or to read this page (!), it is suggested to use your phone or a different PC
* Start by closing your browser, all tabs especially YouTube or other video players.  If you need internet access to look things up or to read this page (!), it is suggested to use your phone or a different PC
* Close any music player
* Close any music player
* Close down '''Discord''' completely (note: by default, Discord remains running but dormant, see miniaturized icons in the collection to the right of your Windows taskbar, sometimes called the [https://www.windowscentral.com/tour-windows-10-taskbar-and-what-its-icons-do Overflow area]): Discord has been known to produce severe (but uncommon) lag spikes while playing Vintage Story on some systems, so shut it down, see if that fixes the problem. If Discord is the problem, as above you can perhaps use Discord instead on your phone if you need it while playing, or you can try going into the "Voice and Video" and "Advanced Settings" in Discord and switching off Hardware Acceleration in both places.
* Close down '''Discord''' completely (note: by default, Discord remains running but dormant, see miniaturized icons in the collection to the right of your Windows taskbar, sometimes called the [https://www.windowscentral.com/tour-windows-10-taskbar-and-what-its-icons-do Overflow area]): Discord has been known to produce severe (but uncommon) lag spikes while playing Vintage Story on some systems, so shut it down, see if that fixes the problem. If Discord is the problem, as above you can perhaps use Discord instead on your phone if you need it while playing - or you can try going into Discord's settings, the "Voice and Video" and "Advanced Settings" and switching off Hardware Acceleration in '''both''' places.
* Prevent Windows (or your other operating system) from doing heavy tasks while you are playing, including virus scans, disk indexing service, Windows Update etc. etc. - switch off all of that, at least while testing. For Windows, [https://www.oo-software.com/en/shutup10 OOSU10] offers several satisfying settings to take more control of your own PC, and is free.
* Prevent Windows (or your other operating system) from doing heavy tasks while you are playing, including virus scans, disk indexing service, Windows Update etc. etc. - switch off all of that, at least while testing. For Windows, [https://www.oo-software.com/en/shutup10 OOSU10] offers several satisfying settings to take more control of your own PC, and is free.
* On Windows, check the '''Task Manager''', Start-up tab, disable everything which is not essential (probably only one or two things there are truly essential, including audio and mouse software), and re-start Windows for a clean start
* On Windows, check the '''Task Manager''', Start-up tab, disable everything which is not essential (probably only one or two things there are truly essential, such as audio and mouse software), and re-start Windows for a clean start
* On Windows, now check the '''Task Manager''', Processes.  Ideally you want to see that steadily at 0.1% CPU, 0% Disk, 0% Network when the game is not running, the main thing using CPU should be Task Manager itself.  Click on the CPU heading, to order tasks by which one is using the most CPU.  Any process more than 0.1% CPU, consider shutting it down now (right-click and choose End Task), unless it is System or some other essential part of Windows: if using Task Manager like this is new to you, proceed with caution, look up online guides to the processes or ask a knowledgeable friend for help
* On Windows, now check the '''Task Manager''', Processes.  Ideally you want to see that steadily at 0.1% CPU, 0% Disk, 0% Network when the game is not running, the main thing using CPU should be Task Manager itself.  Click on the CPU heading, to order tasks by which one is using the most CPU.  Any process more than 0.1% CPU, consider shutting it down now (right-click and choose End Task), unless it is System or some other essential part of Windows: if using Task Manager like this is new to you, proceed with caution, look up online guides to the processes or ask a knowledgeable friend for help
* If you want to go deeper down this rabbit-hole on Windows, open the '''Task Scheduler''', typically there can be 50-100 or more tasks listed under various tabs there which various software has added. These tasks run sometimes, can include when you are in the middle of a game.  In most cases you don't need any of that, or very little of it: take care over any task added by the Windows system itself.  Again, if using Task Scheduler is new to you,  proceed with caution!
* If you want to go deeper down this rabbit-hole on Windows, open the '''Task Scheduler''', typically there can be 50-100 or more tasks listed under various tabs there which various software has added. These tasks run sometimes, can include when you are in the middle of a game.  In most cases you don't need any of that, or very little of it: take care over any task added by the Windows system itself.  Again, if using Task Scheduler is new to you,  proceed with caution!