Framerate and Performance/ru: Difference between revisions

From Vintage Story Wiki
(Created page with "5. Убедитесь, что ваш ЦП не перегревается и, следовательно, не подвергается «тепловому троттлинг...")
(Created page with "''Совет: на многоядерном ПК общий процент использования ЦП, отображаемый Windows, может выглядеть м...")
Line 33: Line 33:
5. Убедитесь, что ваш ЦП не перегревается и, следовательно, не подвергается «тепловому троттлингу». Если вы запустите Vintage Story без VSync и с неограниченной частотой кадров, одно из ядер вашего процессора будет постоянно загружено на 100%. Это, в свою очередь, приведет к повышению внутренней температуры процессора. Вы можете контролировать температуру с помощью бесплатного инструмента «Монитор оборудования» или просто слушать нарастающий шум вентилятора! Если внутренняя температура ЦП приближается к максимально допустимому уровню (90-100 °C на современном ЦП, это достаточно жарко, чтобы вскипятить воду), то ЦП должен автоматически переключиться на работу с более низкой скоростью, чем его максимальная скорость, это «тепловое дросселирование». Это замедлит работу игры. Чтобы предотвратить эту проблему с перегревом, используйте VSync или ограничение максимальной частоты кадров, чтобы ядра вашего ЦП не загрузились на 100%: ваша игра, вероятно, будет работать быстрее в целом, если самое загруженное ядро ​​ЦП будет загружено на 70-80% или меньше.
5. Убедитесь, что ваш ЦП не перегревается и, следовательно, не подвергается «тепловому троттлингу». Если вы запустите Vintage Story без VSync и с неограниченной частотой кадров, одно из ядер вашего процессора будет постоянно загружено на 100%. Это, в свою очередь, приведет к повышению внутренней температуры процессора. Вы можете контролировать температуру с помощью бесплатного инструмента «Монитор оборудования» или просто слушать нарастающий шум вентилятора! Если внутренняя температура ЦП приближается к максимально допустимому уровню (90-100 °C на современном ЦП, это достаточно жарко, чтобы вскипятить воду), то ЦП должен автоматически переключиться на работу с более низкой скоростью, чем его максимальная скорость, это «тепловое дросселирование». Это замедлит работу игры. Чтобы предотвратить эту проблему с перегревом, используйте VSync или ограничение максимальной частоты кадров, чтобы ядра вашего ЦП не загрузились на 100%: ваша игра, вероятно, будет работать быстрее в целом, если самое загруженное ядро ​​ЦП будет загружено на 70-80% или меньше.


''Tip: on a multi-core PC, the overall CPU usage percentage shown by Windows can look small even if one core is maxed out. For example, with 8 cores, one core maxed out at 100% would only be 12.5% CPU usage overall. To see what's really going on, you need to use a non-Microsoft tool like Hardware Monitor.''
''Совет: на многоядерном ПК общий процент использования ЦП, отображаемый Windows, может выглядеть маленьким, даже если одно ядро загружено до предела. Например, с 8 ядрами одно ядро, максимально загруженное на 100%, будет использовать всего 12,5% ЦП в целом. Чтобы увидеть, что происходит на самом деле, вам нужно использовать инструмент стороннего производителя, например Hardware Monitor».


''(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.  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.)''

Revision as of 12:02, 18 February 2022

Other languages:

Vintage Story стремится быть высокопроизводительной игрой даже на неигровом оборудовании, таком как ноутбуки. Для высокопроизводительного игрового оборудования должно быть возможным достижение высокой частоты кадров (100 кадров в секунду или более) даже при всех максимальных настройках.

Как правило, каждая новая основная версия Vintage Story должна иметь лучшую производительность: например, версия 1.15 была заметно лучше, чем 1.14.

(Последнее обновление 7 февраля 2022 г. для версии игры 1.16.3)

Основные советы по повышению производительности — если игра работает медленно

С соответствующими настройками большинство игроков смогут достичь играбельной частоты кадров (например, 30 кадров в секунду) даже на старом оборудовании. Обязательно прочитайте Руководство по медленному запуску игры.
Если у вас есть только встроенная графика (например, Intel Core с Iris), используйте настройки графики Medium или Low или даже ниже.

Дополнительные советы по увеличению производительности

1. Если вы играете в одиночную игру, для максимальной производительности и стабильности — на ПК с оперативной памятью не менее 16 ГБ и современным процессором — вы можете настроить выделенный сервер на своем ПК вместо игры в одиночную игру. Итак, вы копируете/перемещаете свой сохраненный игровой мир в папку Saves на сервере и запускаете VintagestoryServer.exe. Затем запустите игру в обычном режиме, в главном меню нажмите «Мультиплеер» и подключитесь к только что созданному серверу. Адрес сервера на вашей машине всегда 127.0.0.1. Это должно быть просто — обычно нет необходимости настраивать переадресацию портов или разрешения брандмауэра, если вы играете на сервере, который работает на вашем собственном ПК.

Настоятельно рекомендуется для новых более высоких расстояний просмотра выше 1024 или любых больших расстояний просмотра!

Почему это помогает: это означает, что серверная часть игры (которая создает и управляет миром) и клиентская часть игры (которая рисует куски, животных и все остальное, что вы видите) могут запускаться отдельно в своих собственных пространства памяти, не конфликтуя друг с другом и с уменьшенными пиками задержки. У вас также будет меньше шансов исчерпать память на больших расстояниях обзора. Платформа .NET предоставляет игре 4 ГБ ОЗУ на каждый экземпляр: в одиночной игре эти 4 ГБ должны быть разделены между внутренним сервером и клиентом. С выделенным сервером у сервера есть свои 4 ГБ, а у клиента - свои 4 ГБ. Больше памяти — это хорошо!»

В качестве альтернативы, если у вас есть ноутбук или аналогичный с ограниченным объемом оперативной памяти, но в той же локальной сети есть еще один компьютер, попробуйте запустить выделенный сервер Vintage Story на этом другом компьютере и подключиться к нему через локальную сеть. Для этого может потребоваться настройка брандмауэров, чтобы Vintage Story имела доступ к сети на обоих ПК.


2. Может помочь игра в полноэкранном режиме, а не в оконном.


3. Vintage Story имеет широкий набор графических настроек. Регулировка их вверх или вниз, а также включение или выключение более сложных элементов может оказать огромное влияние на производительность. Всплывающие подсказки для каждого элемента управления на странице настроек графики должны дать вам некоторые подсказки. Отключение Shadows, SSAO и Bloom окажет наибольшее влияние на частоту кадров для большинства людей.

«Большие расстояния просмотра влияют не только на частоту кадров (fps) на экране, но и на производительность во время игры. Если все вяло или есть частые всплески задержки, попробуйте уменьшить расстояние просмотра. Игра сбалансирована, чтобы быть гладкой и играбельной на большинстве современных ПК при расстоянии просмотра от 256 до 512 блоков, в зависимости от вашего оборудования. Выше 512 блоков, безусловно, возможно на большинстве ПК — по крайней мере, чтобы посмотреть, как это выглядит, — но длительную игру на таких больших расстояниях обзора с максимальной графикой лучше оставить только для высококлассных игровых ПК, которые последовали совету в шаге № 1. ...


4. Игра поддерживает экраны 4k. Тем не менее, размер этого экрана предъявляет более высокие требования к графическому процессору, поэтому частота кадров может быть ниже. На мониторах Ultra HD вы можете поэкспериментировать с уменьшением разрешения до более низкого значения HD, например 1920x1080. Вы не потеряете большую графическую точность, и это, вероятно, улучшит производительность.


5. Убедитесь, что ваш ЦП не перегревается и, следовательно, не подвергается «тепловому троттлингу». Если вы запустите Vintage Story без VSync и с неограниченной частотой кадров, одно из ядер вашего процессора будет постоянно загружено на 100%. Это, в свою очередь, приведет к повышению внутренней температуры процессора. Вы можете контролировать температуру с помощью бесплатного инструмента «Монитор оборудования» или просто слушать нарастающий шум вентилятора! Если внутренняя температура ЦП приближается к максимально допустимому уровню (90-100 °C на современном ЦП, это достаточно жарко, чтобы вскипятить воду), то ЦП должен автоматически переключиться на работу с более низкой скоростью, чем его максимальная скорость, это «тепловое дросселирование». Это замедлит работу игры. Чтобы предотвратить эту проблему с перегревом, используйте VSync или ограничение максимальной частоты кадров, чтобы ядра вашего ЦП не загрузились на 100%: ваша игра, вероятно, будет работать быстрее в целом, если самое загруженное ядро ​​ЦП будет загружено на 70-80% или меньше.

Совет: на многоядерном ПК общий процент использования ЦП, отображаемый Windows, может выглядеть маленьким, даже если одно ядро загружено до предела. Например, с 8 ядрами одно ядро, максимально загруженное на 100%, будет использовать всего 12,5% ЦП в целом. Чтобы увидеть, что происходит на самом деле, вам нужно использовать инструмент стороннего производителя, например Hardware Monitor».

(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.)


6. If you followed suggestion #1 above, you can tweak server performance by adjusting the "magic numbers". The magic numbers default values are aimed at a typical Vintage Story multiplayer server with let's say 3 or 4 players, playing over the internet, so some of them can be increased if it's only 1 player on your own machine.


7. There's a known issue on Radeon graphics cards - including high end Radeon cards - about GPU availability, more like memory lock contention. The issue is normally only seen on max graphics settings (with shadows enabled) and is most obvious when moving across the map so that a lot of new map loads, there can be noticeable frame rate drops and stutter. Game version 1.15.7 and above has a change that slightly improves this, we hope to do even more to work around it in future versions, but ultimately it is a hardware/GPU issue. For anyone bothered by the issue, a solution is to ease the pressure on the GPU by turning down some of the top end settings (SSAO and Shadows, or reduce the MaxFPS) so that the GPU has some idle time each frame.


8. The Occlusion Culling graphics setting is recommended on any modern multi-core CPU (4 cores or more) - it uses one additional CPU thread but leads to less work for the GPU.


See also Troubleshooting Guide

Balancing performance, temperature and power consumption

  • For the reasons given in #5 above, it is recommended not to run with Unlimited FPS, but instead to limit the FPS. The main reason to do this is so that your CPU will not be maxed out with one core at 100% all the time, which can lead to overheating or even (in the long term) a shorter lifetime for your CPU. If FPS is limited in any of the ways on offer, it allows the CPU to "rest" in between frames, and that in turn means the CPU takes less power and runs cooler, so that system fans can be quieter, etc, etc.
  • FPS can be limited through the graphics settings. This can be done either by using the MaxFPS slider, or using VSync, or the third VSync option is a combination of both.
  • Most modern graphics cards - even internal graphics on laptops - have a VSync feature. If VSync is on then the game engine will not render frames more quickly than they can be drawn on the actual connected display. This allows the CPU to rest sometimes, essentially waiting until the display is ready to render the next frame, so the CPU will not be at 100%. But sometimes graphics drivers behave strangely with VSync, for example there can be global overrides to switch it off - in this case, Vintage Story's VSync setting will seem not to have any effect, it will be like having framerate unlimited.
  • VSync may help with graphical "tearing" issues, although these do not occur on all systems - they are more common on specialised low-latency gaming monitors so if you have one of those (lucky you!) then VSync is probably your best option.
  • Generally we recommend first trying the game with VSync switched on.
  • The alternative recommendation is to play with VSync switched off and MaxFPS set to a figure slightly higher than the frame rate you actually want to see (remember it's the maximum , not the average). For example if you want to play at average 60fps then set MaxFPS to somewhere around 70-75fps.
  • On a Windows PC (but not Linux or Mac) there is an issue where if you are using MaxFPS alone (not VSync) to control the framerate, the Windows timer is not very precise. In practice, in the frame rate meter, what this looks like is the frame rate seems to stick at specific step levels like 48fps or 32fps instead of the 60fps you want. This issue is caused by the Windows system interval timer and there's not much the Vintage Story dev team can do about it: even if we take it by the scruff of the neck, other Windows applications running on your PC can change that timer at any time. Therefore, on a Windows PC with a display refresh rate of 60 fps, you may need to experiment a little - it also depends what other applications are running on your system. For some people it works best to set MaxFPS somewhat higher than the level you want. So if you want 60fps, set MaxFPS somewhere in the range 70-75fps (you can experiment!), and if all is going well then the Windows system interval timer will drop that down to its next step level which might be 64fps. 64fps is good, it's close to 60fps which the display requires.
  • On a Windows PC another option is to embrace 32fps, so set your MaxFPS slightly higher than 32fps (say around 40 fps) and you should find that Windows effect drops it down and locks it at 32fps. The reason for doing this is to have a steady constant FPS, no matter what is happening on screen. A constant 32fps should look generally smooth, as long as its steady. That's better than TV shows and sports (30fps) or movies (24fps).
  • Some players want lag (latency) to be as low as possible, in that case you can try setting MaxFPS at a much higher number like 100 or 120fps. Even a high number like that will have cooling benefits on a high powered gaming PC which is capable of reaching framerates of 150 or more in Vintage Story.

Thinking about what is on-screen

  • Vintage Story framerates can change a lot depending on the complexity of what is on screen
  • To see this, with unlimited MaxFPS, try looking straight up into the sky - you should see the frame rate increase dramatically
  • Normally the most complex scenes, causing the lowest FPS, are thick, deep forests. It's because of all the leaves, and each leaf block is slightly transparent, so everything behind leaf blocks also has to be drawn - the depth of field is huge.

CPU or GPU runs too hot

  • The main way to control CPU and GPU usage is using the Vsync and Max FPS settings in the graphics settings as described above.
  • One path to optimise both: pick a framerate you want e.g. 60 fps. Now with VSync off and Max FPS unlimited, adjust the graphics settings that heavily affect framerate (view distance, godrays & bloom, shadows, SSAO) to hit a framerate that's about 15%-20% better than you want, e.g. 70 fps or 80 fps. When the game can comfortably hit that, now set Max FPS to 60fps and VSync to 'On + Sleep'. This should produce a stable 60fps, a smooth game with no lag spikes, and less than 100% CPU and GPU usage so that your fans run quiet.