Частота кадров и производительность

From Vintage Story Wiki
Revision as of 12:03, 18 February 2022 by Mirotworez (talk | contribs) (Created page with "===Баланс производительности, температуры и энергопотребления=== * По причинам, указанным в пункт...")
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».

(Обратите внимание, что VintageStory использует многопоточность для повышения производительности. Вот почему игра лучше всего работает на ЦП с 4 или более ядрами. Но основной поток рендеринга, который является одним из ограничений FPS, выполняется на одном ядре. )


6. Если вы следовали предложению № 1 выше, вы можете настроить производительность сервера, изменив «магические числа». Значения магических чисел по умолчанию предназначены для типичного многопользовательского сервера Vintage Story с, скажем, 3 или 4 игроками, играющими через Интернет, поэтому некоторые из них можно увеличить, если на вашем компьютере только 1 игрок.


7. Существует известная проблема с графическими картами Radeon, включая высокопроизводительные карты Radeon, связанная с доступностью графического процессора, больше похожая на борьбу за блокировку памяти. Проблема обычно наблюдается только при максимальных настройках графики (с включенными тенями) и наиболее очевидна при перемещении по карте, когда загружается много новых карт, могут быть «заметные падения частоты кадров и рывки». В версии игры 1.15.7 и выше есть изменение, которое немного улучшает это, мы надеемся сделать еще больше, чтобы обойти это в будущих версиях, но в конечном итоге это проблема оборудования/графического процессора. Для всех, кого беспокоит эта проблема, решение состоит в том, чтобы уменьшить нагрузку на графический процессор, отключив некоторые верхние настройки (SSAO и Shadows или уменьшив MaxFPS), чтобы у графического процессора было некоторое время простоя в каждом кадре.


8. Графический параметр Occlusion Culling рекомендуется использовать на любом современном многоядерном ЦП (4 ядра и более) — он использует один дополнительный поток ЦП, но снижает нагрузку на ГП.


См. также Руководство по устранению неполадок

Баланс производительности, температуры и энергопотребления

  • По причинам, указанным в пункте 5 выше, рекомендуется не использовать неограниченный FPS, а вместо этого ограничить FPS. Основная причина этого заключается в том, что ваш процессор не будет постоянно работать с одним ядром на 100%, что может привести к перегреву или даже (в долгосрочной перспективе) к сокращению срока службы вашего процессора. Если FPS ограничен каким-либо из предлагаемых способов, это позволяет ЦП «отдыхать» между кадрами, а это, в свою очередь, означает, что ЦП потребляет меньше энергии и работает медленнее, поэтому системные вентиляторы могут работать тише и т. д. и т. д.
  • FPS можно ограничить через настройки графики. Это можно сделать либо с помощью ползунка MaxFPS, либо с помощью VSync, либо третий вариант VSync представляет собой комбинацию обоих.
  • Большинство современных графических карт — даже внутренняя графика ноутбуков — имеют функцию вертикальной синхронизации. Если VSync включен, то игровой движок не будет отображать кадры быстрее, чем они могут быть отрисованы на фактическом подключенном дисплее. Это позволяет ЦП иногда отдыхать, по сути, ожидая, пока дисплей будет готов отобразить следующий кадр, поэтому ЦП не будет загружен на 100%. Но иногда графические драйверы ведут себя странно с VSync, например, могут быть глобальные переопределения для его отключения - в этом случае настройка VSync в Vintage Story не будет иметь никакого эффекта, это будет похоже на неограниченную частоту кадров.
  • VSync может помочь с проблемами графического «разрыва», хотя они возникают не на всех системах — они чаще встречаются на специализированных игровых мониторах с малой задержкой, поэтому, если у вас есть один из таких (счастливчик!), тогда VSync, вероятно, ваш лучший вариант .
  • Обычно мы рекомендуем сначала попробовать игру с включенной вертикальной синхронизацией.
  • В качестве альтернативы рекомендуется играть с выключенной вертикальной синхронизацией и установленным значением MaxFPS, немного превышающим частоту кадров, которую вы на самом деле хотите видеть (помните, что это максимум, а не среднее значение). Например, если вы хотите играть со средней скоростью 60 кадров в секунду, установите MaxFPS примерно на 70-75 кадров в секунду.
  • На ПК с Windows (но не на Linux или Mac) существует проблема, из-за которой, если вы используете только MaxFPS (не VSync) для управления частотой кадров, таймер Windows не очень точен. На практике в измерителе частоты кадров это выглядит так: частота кадров, кажется, придерживается определенных уровней шага, таких как 48 кадров в секунду или 32 кадра в секунду, вместо 60 кадров в секунду, которые вы хотите. Эта проблема вызвана системным интервальным таймером Windows, и команда разработчиков Vintage Story мало что может с этим поделать: даже если мы возьмем ее за шкирку, другие приложения Windows, работающие на вашем ПК, могут изменить этот таймер в любое время. . Поэтому на ПК с Windows с частотой обновления дисплея 60 кадров в секунду вам, возможно, придется немного поэкспериментировать — это также зависит от того, какие другие приложения работают в вашей системе. Для некоторых людей лучше всего установить MaxFPS несколько выше желаемого уровня. Поэтому, если вы хотите 60 кадров в секунду, установите MaxFPS где-то в диапазоне 70-75 кадров в секунду (вы можете поэкспериментировать!), И если все идет хорошо, системный интервальный таймер Windows снизит это значение до следующего уровня шага, который может быть 64 кадра в секунду. 64 кадра в секунду — это хорошо, это близко к 60 кадрам в секунду, которые требуются для дисплея.
  • На ПК с Windows другой вариант — использовать 32 кадра в секунду, поэтому установите MaxFPS немного выше 32 кадров в секунду (скажем, около 40 кадров в секунду), и вы обнаружите, что эффект Windows снижает его и фиксирует на 32 кадрах в секунду. Причина этого заключается в том, чтобы иметь стабильный постоянный FPS, независимо от того, что происходит на экране. Постоянные 32 кадра в секунду должны выглядеть в целом плавно, если они стабильны. Это лучше, чем телешоу и спорт (30 кадров в секунду) или фильмы (24 кадра в секунду).
  • Некоторые игроки хотят, чтобы задержка (задержка) была как можно меньше, в этом случае вы можете попробовать установить максимальное значение MaxFPS, например, 100 или 120 кадров в секунду. Даже такое большое число будет иметь преимущество в охлаждении мощного игрового ПК, способного достигать частоты кадров 150 или более в 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.