Что значит высокий fps

Почему производительность в играх — это не просто средний FPS


Я работаю в игровой индустрии уже более 8 лет. В Wargaming решаю весьма широкий круг вопросов: от анализа патчей до решения различных внутренних проблем. Так вышло, что проблема комфорта и производительности попала в поле моего зрения. После общения с разработчиками World of Tanks, тестировщиками и исследователями поведения игроков у меня сложилось видение вопроса, которое я оформил в виде этой статьи. Я не специалист в области компьютерной графики или разработчик графического движка, не провожу UX-тесты на людях. Но надеюсь, собранная информация и мой непредвзятый взгляд на вопрос натолкнут вас на прогрессивные мысли и стимулируют к творческому поиску решения проблемы производительности в игре.

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

Обычно под производительностью понимают средний уровень FPS в игре за определенный отрезок времени. Из этого вытекает предположение, что высокий FPS означает высокую производительность и наоборот.

Эта упрощенная картина скрывает некоторые важные детали. Например, то, что для различных по динамике игр требования к уровню FPS могут отличаться. Восприятие шутера от первого лица гораздо более чувствительно к производительности, чем RTS. Даже эффективность выполнения тех или иных действий в одной игре (перемещение, стрельба, нахождение в ангаре) может выдвигать различные требования к уровню FPS.

Читайте также:  Что значит номерная кукла гдр


График влияния FPS на эффективность действий в игре. Сплошной линией показано движение, пунктирной — стрельба. По вертикальной оси отложена нормализованная эффективность. Видно, что эффективность стрельбы сильнее зависит от FPS, чем перемещение. Источник: On frame rate and player performance in first person shooter games. Kajal Claypool and Mark Claypool

В тех случаях, когда средний уровень FPS остается неизменным, кратковременные провалы (от 15 сек и более), задержки (лаги) и подергивания способны испортить впечатление об игре и серьезно снизить эффективность действий игрока. Но этот вывод справедлив далеко не для всех игровых ситуаций; тем более он не распространяется на все игры.

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

Факторы, влияющие на производительность

Конфигурация ПК. Тут все очевидно: мощное «железо» означает более высокую производительность.

Клиентское ПО, включая ОС. Основным источником проблем с производительностью в играх являются антивирусы, торрент-клиенты и другие фоновые программы и службы, обращающиеся к диску во время игры. Важным моментом здесь является отсутствие осознания пользователем источника проблемы — всегда виновата игра.

Сетевые проблемы. К этой категории относятся все причины плохого функционирования сети на участке между сервером и устройством пользователя. Некачественное сетевое оборудование, низкий уровень сигнала Wi-Fi или большое количество беспроводных клиентов, проблемы на стороне провайдера, неоптимальный сетевой маршрут доставки трафика. В общем, все что создает проблемы доставки пакетов.

Скорость работы приложения. Разные игровые движки потребляют разное количество ресурсов, в зависимости от качества архитектуры и поддерживаемых эффектов.

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

Настройки графики. Более половины наших пользователей настраивают графику вручную. Далеко не всегда эти настройки оптимальны.

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

Моды. Результаты недавних тестов, проведенных нашим отделом QA, объективно показывают, что моды отрицательно влияют на производительность. Сторонние модификации клиента не только снижают средний fps, но и создают резкие провалы в тех случаях, где чистый клиент работает стабильно.

График fps в течение боя. Синяя линия — клиент без модов, красная — с модами.
Видно, что моды способны вызывать серьезные провалы производительности в тех местах, где их нет на «чистом» клиенте.

Графический движок — это лишь один из факторов (не считая настроек), влияющих на производительность, который находится под прямым контролем разработчиков. Следовательно, нельзя сделать однозначных выводов о производительности игры в реальных условиях на основании тестов движка в идеальных условиях.

Методы измерения производительности

Популярная методика тестирования:

  1. Средний FPS. Собирается большое количество реальных реплеев игроков в самых популярных сценариях игры. Затем данные усредняются. Используется для оценки общей производительности относительно других версий клиента.
  2. Синтетические тесты​ (вращающаяся камера в фиксированной точке). Используется для поиска проблем в привязке к локации в игровом мире.
  3. Min по двухсекундному и пятисекундному окну. Используется для обнаружения менее заметных провалов производительности (когда средний FPS не изменился) при модификации рендера.

Альтернативная методика (используется крупным производителем hardware):

  1. % времени, когда FPS ниже 30.
  2. % времени, когда FPS ниже 20.
  3. средний FPS в типичных игровых ситуациях.

Первая методика нацелена на выявление крупных и средних багов, снижающих производительность. Альтернативная методика нацелена на сравнение производительности различных игр на конкретном железе. Ни одна из методик не позволяет оценить насколько пользователю комфортно играть,​ т. к. не учитывает а) игровой контекст (целится игрок или передвигается); б) потребности и особенности игрока (уровень мастерства).

Комфорт игры

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

Очевидно, что при стабильном уровне производительности 60 FPS, отсутствии фризов и задержек комфорт игры будет максимальным. При уровне 10 FPS крайне затруднительно играть практически в любую современную игру. Все остальные промежуточные случаи невозможно трактовать однозначно.

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


Диаграмма зависимости между восприятием комфорта и средним уровнем FPS. При росте производительности в 3 раза, % игроков, считающих игру комфортной, увеличивается всего на треть.


Распределения среднего FPS у игроков c разным уровнем комфорта отличаются незначительно. Видно, что области распределений почти полностью совпадают.

Результаты исследования говорят о том, что:

  1. Опытные игроки имеют лучшие показатели производительности, при этом заявляемый ими уровень комфорта не отличается от менее опытных игроков.
  2. Понятия «комфортность в игре» и «наличие технических проблем» связаны друг с другом, однако отсутствие проблем не гарантирует высокий уровень комфорта, и наоборот.
  3. Если исследовать не всех игроков, а отдельные группы, то есть шанс обнаружить более сильную зависимость. Восприятие комфорта на одном и том же уровне производительности будет отличаться у различных групп игроков и четкая зависимость может быть выявлена.

Источник

Что значит высокий fps

Думаю, с понятием разрешения знакомы уже более-менее все игроки, но на всякий случай вспомним основы. Все же, пожалуй, главный параметр графики в играх.

Изображение, которое вы видите на экране, состоит из пикселей. Разрешение — это количество пикселей в строке, где первое число — их количество по горизонтали, второе — по вертикали. В Full HD эти числа — 1920 и 1080 соответственно. Чем выше разрешение, тем из большего количества пикселей состоит изображение, а значит, тем оно четче и детализированнее.

Влияние на производительность

Очень большое.Увеличение разрешения существенно снижает производительность. Именно поэтому, например, даже топовая RTX 2080 TI неспособна выдать 60 кадров в 4K в некоторых играх, хотя в том же Full HD счетчик с запасом переваливает за 100. Снижение разрешения — один из главных способов поднять FPS. Правда, и картинка станет ощутимо хуже.

В некоторых играх (например, в Titanfall) есть параметр так называемого динамического разрешения. Если включить его, то игра будет в реальном времени автоматически менять разрешение, чтобы добиться заданной вами частоты кадров.

Вертикальная синхронизация

Если частота кадров в игре существенно превосходит частоту развертки монитора, на экране могут появляться так называемые разрывы изображения. Возникают они потому, что видеокарта отправляет на монитор больше кадров, чем тот может показать за единицу времени, а потому картинка рендерится словно «кусками».

Вертикальная синхронизация исправляет эту проблему. Это синхронизация частоты кадров игры с частотой развертки монитора. То если максимум вашего монитора — 60 герц, игра не будет работать с частотой выше 60 кадров в секунду и так далее.

Есть и еще одно полезное свойство этой опции — она помогает снизить нагрузку на «железо» — вместо 200 потенциальных кадров ваша видеокарта будет отрисовывать всего 60, а значит, загружаться не на полную и греться гораздо меньше.

Впрочем, есть у Vsync и недостатки. Главная — очень заметный «инпут-лаг», задержка между вашими командами (например, движениями мыши) и их отображением в игре.

Поэтому играть со включенной вертикальной синхронизацией в мультипеере противопоказано. Кроме того, если ваш компьютер «тянет» игру при частоте ниже, чем заветные 60 FPS, Vsync может автоматически «лочиться» уже на 30 FPS, что приведет к неслабым таким лагам.

Лучший способ бороться с разрывами изображения на сегодняшний день — купить монитор с поддержкой G-Sync или FreeSync и соответствующую видеокарту Nvidia или AMD. Ни разрывов, ни инпут-лага.

Влияние на производительность

В общем и целом — никакого.

Сглаживание(Anti-aliasing)

Если нарисовать из квадратных по своей природе пикселей ровную линию, она получится не гладкой, а с так называемыми «лесенками». Особенно эти лесенки заметны при низких разрешениях. Чтобы устранить этот неприятный дефект и сделать изображения более четким и гладким, и нужно сглаживание.

Здесь и далее — слева изображение с отключенной графической опцией (или установленной на низком значении), справа — с включенной (или установленной на максимальном значении).

Технологий сглаживания несколько, вот основные:

  • Суперсэмплинг (SSAA) — самое эффективное сглаживание, но вместе с тем — жутко требовательное к ресурсам. Работает оно просто: ваша видеокарта рендерит картинку в гораздо более высоком разрешении, чем задано в настройках, а потом «ужимает» его обратно. Чем выше это значение, тем лучше сглаживание и тем выше нагрузка на компьютер. Грубо говоря, при значении SSAA 4X ваш ПК будет вынужден за одно и то же время обсчитать одну и ту же сцену четыре раза, а не один.
  • MSAA — мультисемплинг. По эффективности схож с SSAA, но работает совершенно по-другому (объяснить его простыми словами довольно сложно, но это, пожалуй, и не нужно), а потому менее требователен к ресурсам. Если компьютер позволяет, именно это сглаживание стоит пробовать включать в первую очередь. Картинка лишь едва-едва потеряет в четкости, зато лесенки почти исчезнут.
  • FXAA (Быстрое сглаживание) — более простой способ сглаживания. На всю картинку попросту накидывается размытие. Вообще не влияет на производительность, но добавляет в изображение очень много «мыла». В большинстве случаев уж лучше терпеть «лесенки», но тут кому как.
  • TXAA («Временное сглаживание») / MLAA («Морфологическое сглаживание») — то же самое, что MSAA, но еще эффективнее. Первый тип поддерживается видеокартами Nvidia, второй — AMD. Если в игре есть один из этих вариантов, лучше всего использовать именно его. Почти идеальный баланс между эффективностью и производительностью.

Влияние на производительность

От ничтожного (FXAA) до колоссального (SSAA). В среднем — умеренное.

Качество текстур

Один из самых важных параметров в настройках игры. Поверхности всех предметов во всех современных трехмерных играх покрыты текстурами, а потому чем выше их качество и разрешение — тем четче, реалистичнее картинка. Даже самая красивая игра с ультра-низкими текстурами превратится в фестиваль мыловарения.

Влияние на производительность

Если в видеокарте достаточно видеопамяти, то практически никакого. Если же ее не хватает, вы получите ощутимые фризы и тормоза. 4 гигабайт VRAM хватает для подавляющего числа современных игр, но лучше бы в вашей следующей видеокарте памяти было 8 или хотя бы 6 гигабайт.

Анизотропная фильтрация

Анизотропная фильтрация, или фильтрация текстур, добавляет поверхностям, на которые вы смотрите под углом, четкости. Особенно ее эффективность заметна на удаленных от игрока текстурах земли или стен.

Чем выше степень фильтрации, чем четче будут поверхности в отдалении.

Этот параметр влияет на общее качество картинки довольно сильно, но систему при этом практически не нагружает, так что в графе «фильтрация текстур» советуем всегда выставлять 8x или 16x. Билинейная и трилинейная фильтрации уступают анизотропной, а потому особенного смысла в них уже нет.

Влияние на производительность

Тесселяция

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

Влияние на производительность

Зависит от игры, от того, как именно движок применяет ее к объектам. Чаще всего — среднее.

Качество теней

Все просто: чем выше этот параметр, тем четче и подробнее тени, отбрасываемые объектами. Добавить тут нечего. Иногда в играх также встречается параметр «Дальность прорисовки теней» (а иногда он «вшит» в общие настройки). Тут все тоже понятно: выше дальность — больше теней вдалеке.

Влияние на производительность

Зависит от игры. Чаще всего разница между низкими и средними настройками не столь велика, а вот ультра-тени способны по полной загрузить ваш ПК, поскольку в этом случае количество объектов, отбрасывающих реалистичные тени, серьезно вырастает.

Глобальное затенение (Ambient Occlusion)

Один из самых важных параметров, влияющий на картинку разительным образом. Если вкратце, то AO помогает имитировать поведения света в трехмерном мире — а именно, затенять места, куда не должны попадать лучи: углы комнат, щели между предметами и стенами, корни деревьев и так далее.

Существует два основных вида глобального затенения:

SSAO (Screen space ambient occlusion). Впервые появилось в Crysis — потому тот и выглядел для своего времени совершенно фантастически. Затеняются пиксели, заблокированные от источников света.

HBAO (Horizon ambient occlusion). Работает по тому же принципу, просто количество затененных объектов и зон гораздо больше, чем при SSAO.

Влияние на производительность

Глубина резкости (Depth of Field)

То самое «боке», которое пытаются симулировать камеры большинства современных объектов. В каком-то смысле это имитация особенностей человеческого зрения: объект, на который мы смотрим, находится в идеальном фокусе, а объекты на фоне — размыты. Чаще всего глубину резкости сейчас используют в шутерах: обратите внимание, что когда вы целитесь через мушку, руки персонажа и часть ствола чаще всего размыты.

Впрочем, иногда DoF только мешает — складывается впечатление, что у героя близорукость.

Влияние на производительность

Целиком и полностью зависит от игры. От ничтожного до довольно сильного (как, например, в Destiny 2).

Bloom (Свечение)

Этот параметр отвечает за интенсивность источников света в игре. Например, с включенным Bloom, свет, пробивающийся из окна в помещение, будет выглядеть куда ярче. А солнце создавать натуральные «засветы». Правда, некоторые игры выглядят куда реалистичнее без свечения — тут нужно проверять самому.

Влияние на производительность

Чаще всего — низкое.

Motion Blur (Размытие в движении)

Motion Blur помогает передать динамику при перемещениях объекта. Работает он просто: когда вы быстро двигаете камерой, изображение начинает «плыть». При этом главный объект (например, руки персонажа с оружием) остается четким.

Источник

Оцените статью