Frame time что это в играх
Перейти к содержимому

Frame time что это в играх

  • автор:

FPS vs Frametime: The Secret to Silky Smooth Gaming

Lakshya Srivastava

In the beginning were created the heaven and the earth. And God said, Let there be light: and there was light. But with the light came horrible, vomit-inducing stuttering.

Perplexed, God looked at the upper-right corner of his screen, and saw a stable framerate of 60. What was happening?

Most of us can relate to God when it comes to troubles with stuttering in games. And while you may explain it away in multiplayer games as server issues, when it happens in single-player games, it can render them completely unplayable, and there’s nothing beside your own system to blame.

It doesn’t make sense. You’re running the latest hardware, your fps is constantly above 30, and yet the game’s stuttering harder than you did on your first date.

Well, here’s the dirty truth of performance benchmarks in games: a high and stable framerate is only one part of getting a game to run smoothly. The other part is this often overlooked term called frametime.

Let’s say your system’s running a game at 60 fps. That’s 60 frames rendered per second. But what’s happening within that one second? Perhaps your PC is rendering a single frame in the first 0.8 seconds, and the rest of the 59 frames in the last 0.2 seconds. In this case, though the fps counter will show a stable 60, you’ll see terrible stuttering on your screen.

This is where frametime comes in. Frametime shows you whether your frames are being delivered at consistent intervals within a second. So for a smooth 60 fps, each frame should be rendered in 1/60 seconds, which is 16.67 milliseconds.

So how do we monitor frametime? And how do we fix a fluctuating frametime? Fortunately, there’s a free app to do it for you with minimum fuss- The Rivatuner Statistics Server.

Here’s how it works. Once installed, the app will open up with the interface you see below.

All you need to do is click that green ‘Add’ button, and find the executable of the game you’re having stuttering issues with. For this example, we’re using Larian Studios’s multi-award winning CRPG Divinity Original Sin II.

See that line to the right that says ‘Framerate limit’? Change that 0 next to it to the framerate you’d like to run the game at. This will either be 30 or 60, depending on what your hardware can support. If your system can’t maintain a consistent 60 fps with this game, we’d recommend setting this limit to 30. Type the value, press Enter, and you’re done. Now keep Rivatuner open and start the game. Rivatuner will ensure that the frames are paced at regular intervals in each second depending on the framerate limit you set, and there should be an immediate difference in your experience.

That’s all there’s to it. You can add more games to Rivatuner just like the first one, and set their fps limit individually.
If you wish to know more about frametime, here’s a great introduction to it.

Тайминг: как в играх работает один из ключевых принципов анимации Статьи редакции

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

Профессиональный аниматор Дэниел Флойд, автор канала на YouTube New Frame Plus, в своём ролике рассказал про расчёт времени, или тайминг — один из ключевых принципов анимации в видеоиграх. Мы выбрали из видео главное.

Почти все аниматоры — будь то разработчики игр или мультипликаторы — следуют ключевым принципам анимации. Всего их двенадцать, и выдвинули их ещё в прошлом веке художники Disney Олли Джонстон и Фрэнк Томас Хоть и принципы были рассчитаны в основном на мультфильмы, они сохранили актуальность и для компьютерной анимации.

В своём ролике Флойд решил остановиться лишь на одном из них — тайминге (расчёте времени). По его мнению, для геймдева это фундаментальный принцип — так как вся анимация построена на следовании времени.

Тайминг — это скорость или время, с которым происходит действие.

Под действием имеется в виду вообще любое действие, которое может произойти. Они могут быть быстрыми, как моргание глаза, или медленными, как открытие больших тяжёлых дверей.

Благодаря правильному использованию расчёта времени можно придать контекст множеству вещей. В пример Флойд привёл самое обычное действие — подъём на ноги (со стула или пола).

Пускай само по себе движение будет занимать около двух секунд. Но что, если аниматор хочет изобразить не обычного человека, а какого-нибудь гиганта? Значит, в таком случае объекту нужно придать вес: тогда подъём будет длиться больше — условно пять или десять секунд.

Помимо размера, с помощью анимации объекту можно придать определённое настроение или прописать характеристику. Ускорением действия можно изобразить то, что персонаж возбуждён или напуган. Замедлением же — его усталость или уныние.

Вот, что делает расчёт времени настолько фундаментальным — тайминг может показаться простым, но в итоге он оказывает влияние почти на всё.

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

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

К примеру, анимация этого удара Клауда в Super Smash Bros. при 60 кадрах в секунду длится 48 фреймов.

А анимация случайного жеста руки Геральта во время диалога в «Дикой охоте» — почти 140 фреймов.

С таймингом тесно связан другой принцип анимации — спейсинг, или покадровое смещение объекта за определённый отрезок действия. От этого зависит, какие происходят изменения с объектом в пространстве, от одного кадра к другому. Условно говоря, чем сильнее смещается позиция, тем быстрее происходит движение.

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

В качестве примера Флойд также приводит анимации в Shadow of the Colossus. Колоссы — большие существа, и соответственно все анимации у них крайне долгие, что подчёркивает размеры существ.

Но, если разбирать Shadow of the Colossus дальше, становится видно, что во всей игре вообще нет никаких резких движений — будь то главный герой, вынимающий меч, или покрывало, которое медленно опускается на пол под дуновениями ветра.

В этой игре даже маленькие персонажи не делают никаких стремительных движений. Всё движется с мягкостью и благородством. И такой эстетический выбор влияет на всю игру целиком, в ней чувствуется ощущение величественного масштаба — даже если рядом нет никаких колоссов.

То же самое можно сказать и про Red Dead Redemption 2, где долгие движения придают игре реалистичность — что само по себе свойственно эстетике жанра вестерн.

При создании анимаций важно также учитывать и то, как тайминг будет влиять на геймплей. К примеру, в большинстве файтингов все движения происходят крайне быстро — игрок даже не замечает большинство ударов. В Street Fighter один из ударов Рю длится всего 3 фрейма — 1/20 секунды.

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

Напротив, есть такие игры, как Dark Souls — где анимации медленные, а время восстановления после них крайне долгое. Базовый удар мечом занимает 30 фреймов — что в десять раз дольше, чем атака Рю.

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

Есть даже такие игры, как Superhot, где время идёт лишь тогда, когда движется сам игрок. Тайминг — центральная механика геймплея.

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

Плохая идея — выбрать из видео главное. Его бы, наоборот, расширить, дополнить, разнообразить. Тема интересная, а после такой выжимки остаётся ощущение недосказанности и неудовлетворённости.

Но за гифки из Shadow of the Colossus спасибо. Хочется на них вечно смотреть.

Я бы ещё добавил, что крайне важен композиционный ритм в повествовании. Это относится к сторителлингу вообще любого рода, от кино и игр, до веб-сайтов, инфографиков и рекламных постеров, где есть вступление(Заголовок), кульминация (Call to action) и завершение(второстепенная информация).

По этому принципу устроены все элементы, хотя статья хорошо раскрывает эту суть через призму анимаций.

Каждая составная, например игры — это совокупность своих историй. И это не только часть геймплейной эстетики, через анимации. Но и постановки через геймплей. Вступление и завершение боев, скрипты, детали анимаций, исследование мира, порции сюжета. Мозг усваевает все хорошо, когда настроен правильный ритм и композиция. Это наше подсознательное. Это всё, грубо говоря, музыкальная композиция.

Пример очень хорошей композиции на памяти, я могу привести первым — TLoU. Я кстате всегда говорю, что IMHO на деле игра красива не сюжетом (который на самом деле достаточно предсказуемый и в стиле банальной "Дороги"), а именно постановкой. У игры нету логических и ритмических просадок. Все анимации, интеракции, вступления в бой (при том, что у тебя есть возможность выбора по-стелсу, обходом, диверсионно или рембо-стайл) — видно что отточено, чтобы любой сценарий хорошо укладывался в голове и восприятии. ОЧЕНЬ идеально сделаны тайминги душевных диалогов между делом. Ты не скучаешь даже в пассивных эпизодах. Как только уходит этап боя — плавно вставляется диалог или монолог, которого не много и не мало. К окончанию ты уже вступаешь в следующий этап исследования или решения условной "головоломки". Уровень общей композиции, выстроенной как раз через тайминги (не только анимационные) подобно правильной ритмичной музыкальной композиции гораздо лучше и понятней укладывается в голове.

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

P.S.- эхх, гифки видимо надо локально вставлять 🙂

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

Вы правы, если говорить о более высоких этажах.

Но Фрейд и Юнг тут не при чем. Это вещи скорее эволюционные. Осознание ритма и композиции — это исходит глубоко изнутри, из внутреннего понимания систематизации вещей. А это общее для развития каждой культуры. Упорядочивание — признак сознания 🙂

Другое дело, что детали на более поверхностных уровнях — могут меняться. Это даже сегодня видно как раз на культурном уровне. Чернокожим больше свойственна одна музыка. Азиатам другое. Но знаете, что общее? И те, и те — упорядочивают. По-своему, но система присутствует.

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

Что такое фреймтайм ?(желательно словами попроще)

Фреймтайм — это время подготовки кадра, по сути график, сколько готовится каждый кадр.

Смотри фпс снимает счетчик кадров в секунду.
Это прямая.
Каждый кадр — точка на прямой.

У тебя может быть так, что за первые 0.5 секунды, было подготовлено 10 кадров, а за оставшиеся 50 — в итоге у тебя 60 фпс (60кадров в секунду).

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

Что означают 1 % и 0,1 % при тестировании видеокарт и процессоров в играх

Что означают 1 % и 0,1 % при тестировании видеокарт и процессоров в играх

Все чаще при измерении производительности ПК в играх можно заметить показатели «0.1 % Low» и «1 % Low». Большинство неопытных пользователей не придают этому значения и по старинке смотрят только на средний FPS. На самом деле эти показатели очень важны и на них стоит обращать внимание. И вот почему.

Что такое средний FPS и Frame Time

Время, требуемое для отрисовки одного кадра называется Frame time или же «время кадра». Измеряется оно в миллисекундах, но обычно используют частоту кадров (Frame rate), которая обозначает количество кадров, отрисованных за единицу времени. Частота кадров же измеряется в количестве кадров в секунду — Frames per second или же FPS.

Главная единица, используемая при измерении производительности — средний FPS (AVG FPS) за весь промежуток времени. Средний FPS находится по формуле FPS = n/t, где n — количество кадров, отрисованное за все время, а t — время проведения теста. У среднего FPS есть недостаток, который не позволяют ему быть единственной единицей измерения в бенчмарках.

0.1 % минимальный и 1 % низкий FPS

При измерении FPS его среднее значение не является точной величиной, поэтому внимание стоит уделить другим — 1 % низкий и 0.1 % минимальный FPS. В нашем случае важно понимать, что время отрисовки кадра зависит от его сложности. Во время игры могут встречаться карты с большим количеством предметов и NPC в поле видимости игрока, на отрисовку которых будет уходить больше времени. Такие кадры могут задерживаться на экране, в результате чего картинка может фризить и испортить впечатление от игры. Проблема среднего FPS заключается в том, что при замерах время «длинных» кадров усредняется с «быстрыми», поэтому информация о первых теряется.

К примеру, за секунду было отрисовано 30 кадров с таким временем отрисовки в мс:

33, 57, 23, 13, 34, 68, 34, 40, 44, 16, 90, 27, 66, 87, 23, 37, 17, 23, 31, 21, 23, 20, 37, 12, 32, 36, 22, 14, 20, 10

В данном случае средний FPS равен 30 кадрам в секунду, а среднее время отрисовки кадра — 33,3 мс. Общая картина достаточно неплоха, но если взглянуть пристальнее, то можно заметить четыре кадра, время отрисовки которых в два, а то и в три раза больше среднего. Как и было сказано ранее, при высчитывании среднего времени отрисовки кадра и среднего FPS «долгие» кадры теряются на фоне «быстрых», в результате чего значения получаются неточными.

Было принято решение как-нибудь дополнить значения среднего FPS, чтобы лучше описать все кадры.

Существует такое понятие как процентиль, с английского — percentile (в русском языке чаще встречаются персентиль или перцентиль). В нашем случае это можно трактовать как значение, ниже которого находится определенный процент данных из общего набора. У нас 99-процентиль — это значение, ниже которого находятся 99 % данных из общего числа. И, если он равен 90 мс, то 99 % значений времени кадра из примера меньше 90 мс, а 1 % больше или равен этому числу.

В бенчмарках по договоренности используются 99.9- и 99-процентили. Поскольку обычно в качестве единицы измерения применяются FPS, то в данном случае используются обратные 0.1- и 1-процентили FPS. В народе их принято называть 0.1 % минимальный и 1 % низкий FPS. Обычно эти значения оказываются ниже среднего FPS, так как это часть данных, которая описывает редкие игровые события с многочисленным количеством объектов. Это говорит о том, что сложность кадров в сцене непостоянна. Плохо это только тогда, когда 0.1 % минимальный и 1 % низкий FPS «просаживаются» до неиграбельного уровня в результате чего картинка начинает подлагивать. Правда, оценить этот неиграбельный уровень статистически невозможно — для каждого он свой в связи с особенностями человеческого глаза и привычками геймера.

Математические объяснения недостатков среднего FPS (для любознательных)

Между временем кадра и частотой кадров есть математическая связь: значение FPS после отрисовки кадра — мгновенный FPS — обратно времени отрисовки этого кадра:

Поскольку время кадра обычно измеряется в миллисекундах, а частота кадров в единицах в секунду, вышеуказанная формула будет выглядеть вот так:

Например, кадр был отрисован за 25 мс, тогда получается, что мгновенный FPS по окончании его отрисовки был равен 1000/25 = 40 FPS.

Как уже было сказано ранее, средний FPS находится по формуле FPS = n/t. Кроме нее средний FPS можно найти так:

Где t — среднее время кадра, равное t = (t1 + t2 + t3 + … + t-нное)/n

n — общее количество кадров, t1, t2, t3 и т. д. — время отрисовки каждого кадра

То есть, средний FPS — величина, обратная среднему времени кадра. Подтверждается это тем, что время бенчмарка равняется сумме времени отрисовки всех кадров:

t1 + t2 + t3 + … + t-нное = t

Но почему же средний FPS — недостаточно точный показатель измерений? Так происходит, потому что средний FPS не является средним арифметическим значений мгновенного FPS:

FPS ≠ (FPS1 + FPS2 + FPS3 + … + FPS-нное)/n

FPS ≠ (1000/t1 + 1000/t2 + 1000/t3 + … + 1000/t-нное)/n

Для подтверждения этому приведем одну из вышеперечисленных формул:

FPS = 1000/t, где t — t = (t1 + t2 + t3 + … + t-нное)/n

FPS = 1000n/(t1 + t2 + t3 + … + t-нное)

Значения среднего FPS и среднего значения мгновенного FPS будут равны только в том случае, когда все кадры были отрисованы за одинаковые промежутки времени – t1 = t2 = t3 = t-нное = t, что на практике практически невозможно. В этом и заключается главный недостаток среднего FPS.

Средний FPS далеко не идеален, и при измерении производительности системы в играх ориентироваться только на него не стоит. 0.1% минимальный и 1% низкий FPS наоборот являются очень важными единицами измерения. Если говорить простым языком, то они показывают самые большие просадки FPS за время теста, портящие общее впечатление от игры.

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *