Oculus Rift как узнать свой FPS в VR и почему это важно
Shepard_Shadow 2019-06-26
Oculus 5.0 69

Oculus Rift: как узнать свой FPS в VR и почему это важно.

Для начала, пару слов о том, почему стабильный FPS (количество кадров в секунду) так важны именно для VR и почему 30 FPS недостаточно для погружения в виртуальную реальность.

Стандарты кино и телевидения в 24/30 FPS, а также игры на консолях, где 30 FPS долгое время был "золотым стандартом" убедили многих, что такого количества кадров в секунду вполне достаточно для комфортной игры. Однако даже 60FPS для VR игр будет недостаточно. Почему? Всё дело в работе нашего мозга. Не вдаваясь в подробности, есть две большие разницы между игрой на плоском экране и в VR. Если при обычной игре случится просадка FPS, то это лишь вызовет раздражение, но в VR любые фризы разрушают эффект "погружения", могут привести к головным болям и тошноте (так называемый motion sickness).

showdown-oculus-rift

В VR в первую очередь важна задержка между действием пользователя (поворот головы/рук) и отображенным изменением на экране. Она должна составлять не более 11-22 миллисекунд, что и дает итоговые 45-90 FPS. Причём при снижении FPS ниже 90 у Oculus, его ПО начинает вставлять промежуточные синтезированные кадры (технологии ATW и ASW) для сохранения видимой плавности. У шлемов других производителей также существуют похожие технологии.

Казалось бы, для измерения FPS можно было бы использовать уже известные и часто используемые программы, такие как FRAPS, MSI Afterburner(с Riva Tuner) и подобные, однако специфика VR вносит свои коррективы и такие программы часто могут показывать некорректные значения, либо игра/программа вообще не выводит окно на рабочий стол, где можно было бы увидеть результаты, да и не очень удобно их так смотреть, постоянно переключаясь между шлемом и монитором.

Использование инструментов Oculus Debug Tool

Для шлемов Oculus одним из основных средств измерения производительности является поставляемые в комплекте с ПО инструмент Oculus Debug Tool, которые расположен по адресу C:\Program Files\Oculus\Support\oculus-diagnostics.

Oculus Debug Tool

После запуска утилиты, необходимо раскрыть категорию HUDs, нажав на плюсик и выбрать в выпадающем меню Visible HUD пункт "Performance".

Теперь достаточно надеть шлем и основная статистика производительности будет перед глазами. Для того, чтобы скрыть статистику, нужно там же выбрать None. Стоит отметить, что приведенные значения в 90FPS или 11 мс справедливы только для шлема Rift CV1, для шлема Rift S они равны 80FPS, для шлемов других производителей значения могут отличаться.

Oculus Debug Tool в игре

Здесь сверху вниз мы видим:

  1. App Motion-to-Photon Latency — задержку в мс между движением и отображением этого на экране (меньше-лучше).
  2. Performance headroom — свободная производительность CPU и GPU (процессора и видеокарты), в других программах же часто наоборот показывается именно используемый процент. Больше — лучше (так же это говорит о том, что возможно увеличить Supersamling).
  3. Application Frames Dropped — количество кадров, которые не уложились в 11 мс. Если цифры здесь постоянно растут, это значит, что процессор или видеокарта не успевают подготовить кадр за отведенное время.
  4. Compositor Frames Dropped — количество пропущенных искусственных кадров (синтезированных помощью технологии ASW).
  5. Непосредственно сам график FPS, от 0 до 90.
  6. График "свободной" производительности.

Для большинства пользователей данной информации будет достаточно, однако, чтобы определить, что является узким местом в системе (bottleneck), в Debug Tool следует выбрать в выпадающем меню Mode "App Render Timing".

App Render Timing

Здесь нас в первую очередь будут интересовать пункты App Render GPU Time и App Render CPU Time. Первый показывает, сколько времени в мс понадобилось видеокарте для подготовки кадра, второй — сколько процессору. Соответственно, если кто-то не укладывается в лимит 11 мс (90FPS), то он и является "тормозом". Если это GPU, то требуется снизить настройки графики, уменьшить Supersamling, если ранее он был выставлен. Если же это CPU, то в первую очередь стоит закрыть все фоновые программы.

Если это не помогает, скорее всего потребуется покупать новый процессор. Либо же его разгонять (для опытных пользователей, знакомых с разгоном). Однако часто среди VR игр, особенно сделанных небольшими студиями (инди) встречаются плохо оптимизированные игры, где даже топовое железо встает на колени — здесь виновата в первую очередь плохая оптимизация разработчиками.

Использование инструментов SteamVR

Для игр, работающих через SteamVR (OpenVR), можно использовать как Debug Tool, так и встроенные средства в сам SteamVR.

Использование инструментов SteamVR

В его настройках, в пункте "Графика" нужно пролистать до кнопки "Расширенное распределение". Нажав на которую, откроется два графика: для CPU и GPU соответственно. Для того, чтобы увидеть графики в шлеме, поставьте галочку "Показывать в шлеме". Принцип выявления узкого места здесь такой же, как и в случае с Debug Tool.


настройки, frame rate, Oculus Debug Tool, FPS, Oculus Rift

Может быть интересно:

Оставить комментарий:

avatar

Узнать больше об Oculus Rift: