Как сделать ровный фреймтайм в играх

Добавил пользователь Skiper
Обновлено: 19.09.2024

Параметр FPS (от английского frames per second) означает количество отображаемых кадров в секунду. Чем выше это значение, тем плавнее видеоряд и отзывчивее управление, однако максимальный FPS нужен не всегда.

Чем больше FPS, тем лучше?

Знать, сколько кадров в секунду выдает игра важно сразу по нескольким причинам. Во-первых, так гораздо проще настраивать графику. Вы сразу видите прирост или падение производительности в зависимости от измененных настроек. Во-вторых, важно понимать, какое количество кадров в секунду будет оптимальным для вашей системы. Частота кадров — показатель динамический. Единого стандарта нет, но есть некоторые устоявшиеся форматы.

Минимально комфортным считается показатель в 30 кадров в секунду. Именно на этом уровне работают многие консольные игры. Стоит отметить, что до появления форматов высокой четкости (то есть до Xbox 360 и PlayStation 3) консольные игры работали в стандартных телевизионных системах PAL и NTSC. Частота кадров там различается: 25 и 30 кадров соответственно (или 50 и 60 кадров). То есть в то время играбельными считались и 25 кадров. Из-за этого игры в формате PAL кажутся более медленными.

Стоит также отметить, что современные мониторы и видеоадаптеры поддерживают переменную частоту кадров. То есть если ваше железо не может выдать 144 кадра для соответствующего монитора, вы не почувствуете рывков в изображении. Поддержка VRR (variable refresh rate) — одна из фишек нового интерфейса HDMI 2.1, которыми оснащены новые консоли.

Как отобразить FPS на экране

Некоторые игры содержат встроенный счетчик кадров, который можно включить в настройках. Например, такая опция есть в Doom Eternal. Также счетчик кадров есть в игровом клиенте Steam. Включить его можно следующим образом.

Гораздо больше возможностей дают сторонние программы. В нулевых для отображения FPS часто использовали программу FRAPS. Программа уже давно не развивается, последняя версия вышла в 2013 году. Однако при желании скачать ее можно и сейчас. Как минимум, потому что FRAPS поддерживает запись лога, который затем можно просмотреть в удобоваримом виде через программу FRAFS. Тем не менее лучше использовать более продвинутые инструменты вроде MSI Afterburner или FPS Monitor.

Как настроить мониторинг MSI Afterburner

Преимущество MSI Afterburner в том, что это бесплатная программа, в отличие от FPS Monitor, лицензия для которого стоит 350 рублей. Поэтому настраивать мониторинг мы будем именно на примере MSI Afterburner.

Почти все настройки RivaTuner Statistics Server можно оставить по умолчанию. Проследите, чтобы были активированы пункты автозагрузки отображения оверлея: Start with Windows и Show On-Screen Display. Также может пригодиться функции ограничения кадров в секунду (Framerate Limit), а также масштабирование (On-Screen Display Zoom).

Что такое показатели 1% и 0,1%

Показатели 1% и 0,1% еще называют редкими и очень редкими событиями. В целом это описание довольно точное, так как эти показатели отражают среднее количество кадров в худший 1% или 0,1% времени.

Среднее количество кадров в секунду — хороший показатель для определения общей производительности. Но для более детального анализа такой параметр не подходит. Минимально зафиксированное количество кадров в секунду тоже может не отражать реальной картины. К примеру, во время мониторинга могла случиться одна кратковременная просадка до 10 кадров. В остальное время производительность не проседала ниже 25 кадров, но статистика уже будет подпорчена 10 кадрами.

Что такое время кадра

Время кадра или Frametime показывает задержку между кадрами, которая измеряется в миллисекундах. Чем она меньше, тем лучше. Однако важна не только низкая задержка между кадрами (то есть высокий фреймрейт), но и плавность. Если график фреймтайма ровный без резких перепадов, то картинка будет плавной даже при не самой высокой частоте кадров. Если график неровный, то будут ощущаться статтеры, то есть рывки в картинке.

Что еще можно узнать из мониторинга

MSI Afterburner, кроме FPS, позволяет вывести еще и другие параметры: температуру и загрузку комплектующих, частоту работы, загрузку отдельных ядер и т. п.

img

Приветос всем, топ сантехники д2ру, столкнулся с проблемой, что фпс в доте локается на 60, хотя кудахтер не приказывает долго жить и может выдавать больше. Xbox dvr и всинк оффнуты, появилась проблема примерно недели 2 назад.

Второе, это то, что в игре мегамаленький фреймтайм. (5 - 10 мс). И на залоканных 60 фпс как будто игра идет как на 30, картинка неплавная, а иногда раз в игру на примерно 10 минут (~после 30 минуты) фреймтайм ставится на 17-20, и на 45 фпс как будто плавные 60. Шо делать? сносить стим и дотан, и переустанавливать заново?

понедельник, 2 июня 2014 г.

Мысли вслух: стоит ли ограничивать фреймрейт в играх

Автор Digital Foundry написал довольно неоднозначную статью про то, стоит ли лочить игры на 30 кадрах/с, если заветных 60-ти достичь не удается. Он сразу же оговорился, что все рассуждения по этому поводу являются вкусовщиной. Спасибо за честность, так сказать. Но подискутировать на поднятую им тему все же можно.

В первую очередь, стоит понимать, почему лок на каком-то стабильном значении fps настолько важен для комфортной игры. Я бы даже сказал, в каких случаях он важен. Дело все в особенностях работы вертикальной синхронизации. Если ее нет, то никаких проблем с восприятием фреймрейта не возникает, разве что придется потерпеть разрывы экрана. Но, если хотите поиграть с комфортом для глаз, то тут начинается самое интересное.

Несмотря на непостоянный фреймрейт, Xbox-версия Titanfall играется без каких либо неприятных задержек, благодаря отсутствию v-sync.

Дело в том, что синхроимпульс заставляет фреймбуферы ждать обновление экрана. То есть появляется определенная фиксированная задержка вывода кадров (frame-time, frame latency), которая влияет не только на плавность картинки, но и на отзывчивость управления. В случае с 60 fps она равна 16 мс, в случае с 30 – 33 мс. Но вот каких-то промежуточных значений при использовании вертикальной синхронизации достичь нельзя. В результате, на тех же 40 fps мы получаем дерганную камеру, так как время рендеринга постоянно скачет между 16 и 33 мс. И чем больше таких резких скачков, тем некомфортнее становится играть – вполне логично.

Наиболее яркий пример – Killzone: Shadow Fall. Это видео наглядно показывает разницу между двумя режимами: 30 и 30-45 fps.

В общем, рассматриваемая в статье DF тема покажется занимательной, скорее, гикам, но для среднестатистического игрока не будет представлять никакого интереса – конечный пользователь не должен задумываться о технических решениях, примененных в программном обеспечении. Тем не менее, разработчики все же начали предоставлять консольным геймерам выбор: играть ли им с ограниченным или неограниченным фреймрейтом.

Если сравнить два процессора i3 7300 и i5 7400, то разница показателя FPS будет отличаться незначительно, а иногда i3 отличается большим фреймрейтом чем i5. Тем не менее на практике по ощущениям, разница крайне значительная в пользу i5. Другими словами счетчик FPS не показатель плавности в играх. Это проблема, т.к. все мы привыкли судить именно по FPS.

FPS (Frames Per Second) — это число кадров полностью отрисованных за 1 секунду. FPS = кадры в секунду. Предположим что кадров было нарисовано 50. По простой формуле можно посчитать что каждый кадр рисовался 20 мс (1сек/50кадров). Это значение проще называть время кадра, т.е. время в течении которого показывается кадр. Проблема в том, что например если в течении секунды, 5 кадров будут показаны за 100 мс, а остальные 45 кадров со временем 11,1 мс, то в течении секунды будет показаны всё те же 50 кадров. Счетчик кадров покажет 50 FPS.

fps не показатель плавности в играх

Естественно 50 кадров которые выводятся равномерно и 50 кадров с периодическими долгими кадрами, ощущаются кардинальным образом поразомну. По счетчику FPS этого совершенно не видно.

Что бы стабильно по 5 раз в секунду были просадки по времени кадра обычно не бывает. Но когда процессор работает на 100%, то любые сторонние задачи (антивирус, открытый браузер и т.д.) могут вызвать затыки в работе. Например общий фреймрейт составляет 50 кадров, но раз в несколько секунд происходят затыки на 100 мс. Что отжирает всего навсего 4 кадра в секунду по счетчику, но делает игру полностью не играбельной и лучше иметь хорошие 25 кадров, чем те 46 с микрофризами. В таких условиях будет очень хорошо видно как игра фризится и становится очень не комфортной.

В реальности это может выглядеть следующим образом. Например у вас 50 FPS, но половина кадров может быть ближе к 30 мс, а вторая половина ближе к 10 мс. В среднем получается 20 мс и 50 FPS, а ощущается это все не на 50 FPS. Больше всего это касается двухядерных процессоров.

FPS не показатель плавности в играх

Что бы словами описать работу процессора обеспечивающего комфортный уровень плавности, следует в меньшей степени уделять внимание цифрам, а в большей степени таким критериям как плавность, равномерность времени кадра, наличие микрофризов и общая комфортность.

Frame Time (время кадра) лучше отражает плавность в играх, чем FPS. На практике это можно увидеть в программе Afterburner. Ниже приведены три графика среднего времени кадра и FPS. Верхний, это Pentiuum G4560, средний i5 7400 и нижний i7 7700 с частотой 4,9 ГГц. На графиках показан один и тот же отрезок игры Watch Dogs 2, это съезд по центральной дороге в городе — это самое требовательное к процессору место, которое удалось найти.

Когда график времени кадра резко ползет вверх — это уменьшение плавности игры. Когда ползет вниз — это увеличение плавности.

fsp и плавность в играх

Когда процессора не хватает игре и игре надо например подгрузить следующие кварталы в городе, то на недостаточных процессорах начинаются просадки. Это видно на графиках — i5 и i7 хватает игре, время кадра плавно падает и плавно растет в зависимости от происходящего. На четырех поточном Pentium ситуация совсем иная — постоянно что-то куда-то прыгает, тем самым заставляя обращать на это внимание. То есть проблема не в том что низкий фреймрейт (FPS), а проблема в том, что он постоянно меняется. Такое поведение в играх называется неравномерность фреймрейта.

Второй эффект, который не отражают циферки FPS — это распределение времени кадра в секунду. Назовем это неравномерность времени кадра. То есть время кадра постоянно скачет и при достижении определенных амплитуд проявляется в виде микрофризов. Такое явление встречается на всех трех процессорах, но на i5 и i7 значительно реже чем на Pentium.

Выводы

FPS не показатель плавности в играх и что бы лучше понимать насколько плавной и комфортной будет игра на том или ином процессоре, нужно меньше смотреть в сторону FPS и больше в сторону распределения времени кадра в секунде. Так как на практике может быть так, что за одни и те же деньги один процессор покажет по счетчику FPS меньше кадров чем другой процессор, но распределение времени кадра будет равномерным в отличии от второго процессора, то не смотря на более низкий FPS, первый процессор для игр будет более комфортным.

One Comment

С распространением движков с переменной кадровой частотой обнаружился недостаток вертикальной синхронизации: если частота монитора 60 Гц, а игра даёт 59 FPS — ожидание синхронизации сразу же опустит кадровую частоту до 30 FPS : один кадровый буфер выводится на экран, второй готов к выводу и включится по сигналу от монитора, третий отрисовывается. Выяснилось, что если кадровая частота сравнима с частотами монитора, тройная буферизация хороша для технодемо, но не для игр — становится нестабильной задержка от пользовательского ввода до экрана. Существуют технологии AMD и nVidia (так называемая

Добавить комментарий Отменить ответ

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Читайте также: