Руководство по получению максимально качественной картинки при игре через ПК (стрим) по проводному и беспроводному Oculus Link

  1. OculusDebugTool выставить Link sharpening enabled. Это новый параметр, он повышает четкость картинки без потери производительности. Но возможно в некоторых случаях можно оставить и на авто режиме.
  2. В OculusDebugTool выставить Encode bitrate 400 (если проблем не будет, можно 500) Этот параметр позволит избавится от артефактов сжатия. В новых прошивках и программе для Link для применения нужен перезапуск. Через приложение на ПК->настройки->бета->перезапуск. (чтобы вернуть стандартное значение, поставьте 0 и перезапустите. 0 в данном случае равняется 150-200мбит на практике). Выставление данного параметра ломает AirLink! ЧТобы починить — сбросить на 0. Для карт GTX1000 серии стоит ставить 300 мбит, для rtx2000 и rtx3000 400 и выше. Данный пункт не влияет на fps, если видеодировщик на карте достаточный (на старых AMD RX580\8, например он ужасный и там больше примерно 100 битрейт не тянет, а на Nvidia GTX1060 — все норм)
  3. В OculusDebugTool выставить Encode resolution width 3970. Если не работает или вызывает глюки/артефакты в нижней части экрана, то сбрасывайте на 0. Для применения нужен перезапуск. Через приложение на ПК->настройки->бета->перезапуск. При достаточно мощном кодировщике данный параметр улучшает картинку без потери производительности. НО на картах со слабым кодировщиком будут лаги и потери кадров (например AMD RX580 8Gb мог кодировать только около 2000 в этом значении) Этот параметр сделает получаемую итоговую(после рендера и адаптации под линзы) картинку на шлеме более четкой, за счет передачи итогового видеопотока на шлем в бОльшем разрешении. По умолчанию при выставлении 0 применяется значение 3680, если карта GTX1000 версии и новее, иначе автоматически снижается в зависимости от видеокарты. после тестов замечено, что увеличение данного параметра может добавлять микроподлагивания рук. Если встречаетесь- лучше сбросить.
  4. В OculusDebugTool: distorsion curvature high. Этот параметр позволит получить бОльшую четкость картинки по центру линз. Для применения нужен перезапуск софта oculus. Но возможно данный параметр требует перепроверки.
  5. Изменение Encode bitrate и Encode resolution widte и distorsion curvature НЕ вызывает уменьшения fps в самой игре, если в видеокарте достаточно мощный блок кодирования видео. Но может незначительно увеличить задержку motion-to-photon.(самая полная задержка от движения головы/контролера до показа этого на экране шлема, сравнивать с задержкой в VD не корректно.) Также encode resolution width может влиять на микроподлагивания рук, если сталкиваетесь, лучше не увеличивать и оставить на 0
  6. В данном пункте в настройках quest 2 в программе для Link на ПК надо выставить герцовку экрана и ренедера картинки. Для начала советую поставить 80HZ, а далее отталкиваться от производительности видеокарты. 80Hz позволит убрать противное мерцание белого цвета на экране. Каждый шаг герцовки потребляет примерно 10% производительности.
  7. Далее нам надо выставить разрешение рендера. Оно напрямую влияет на качество картинки, но также сильно бьет по FPS и нагрузке на видеокарту/потребление видеопамяти.

Есть варианты:

  • Увеличивать разрешение рендера приложений и игр глобально, через приложение Oculus-> настройки устройства. Здесь задается базовое разрешение, идущее далее как 100% в SteamVR.
  • Увеличивать разрешение в SteamVR или в отдельных играх в SteamVR или в самих играх. При выставлении целевого разрешения в стим потребляется чуть-чуть меньше видеопамяти НО важно снять галочку про дополнительную фильтрацию в надстройках видео в SteamVR.
  • Так же стоит учесть, что есть игры, которые самостоятельно увеличивают и уменьшают разрешение динамически, «отплясывая» от установленного.(SteamVR Home, HalfLife:Alyx)
  1. В целом по итоговой четкости картинки нет разницы, где именно выставлять, главное итоговое разрешение в пикселях(точках). Не в процентах в SteamVR, и не в множителе в программе для Link(он очень абстрактен, бесполезен и не постоянен). Для SteamVR игр итоговое разрешение пишется в настройках SteamVR, для игр на Oculus SDK значение сразу берется из настроек программы для Link.
    Идеальное для Oculus Quest 2 разрешение — 5408×2736 включительно и выше(суперсемплинг). С данным разрешением мы получим четкость картинки пиксель приложения в пиксель экрана в центре изображения. Т.е. 5408×2736 действительно «нативное» разрешение рендера для quest 2. Кратко: Оно больше разрешения экрана из-за необходимости устранения искажений линз и угла обзора. Так на всех гарнитурах ,что разрешение рендера больше разрешения экрана примерно на 30-40%. ПРУФ от разработчика Oculus: https://www.reddit.com…_true_11_apptodisplay/ Т.е. разрешение вплоть до 5408×2736 это не суперсемплинг, а андерсемплинг в центре линзы/экрана.
    НО стабильно потянуть такое разрешение на 90Hz сможет разве что Nvidia RTX3080-3090. Поэтому нам надо нащупать оптимальное значение для своей карты. Для понимания запаса производительности в VR игре используйте Overlay HUD -> perfomance в Oculus debug tool Например на Nvidia RTX3070 разрешение рендера обычно получается выставить в районе 4400*2200, на более слабых картах это будет еще меньше.
  2. В настройках игры выставить настройки на свой вкус и производительность видеокарты. Главное стараться получить максимальное разрешение(качество) рендера. Обратите внимание, что иногда игры подстраивают разрешение рендера на ходу, тем самым портя картинку, но добиваясь приемлемой производительности.
  3. Лучше стараться запускать игры в обход SteamVR, используя Oculus SDK. Это сэкономит несколько гигабайт видеопамяти, сделает более отзывчивым управление, картинку более четкой, производительность более высокой. Для этого надо запускать игры со специальным аргументом, и иногда с закрытым SteamVR. Или выбирать какую версию запустить в интерфейсе Steam. При запуске игр без SteamVR, очевидно, не учитываются настройки SteamVR, а сразу берутся из программы Oculus.
  4. Настройки указанные выше не слетают, выставить достаточно один раз, но разрешение рендера и частоту обновления экран (72-80-90Hz) может потребоваться менять под конкретную игру, чтобы не тормозило.

ВНИМАНИЕ 1! Если предметы и руки в игре начали двоиться при движении, значит видеокарта не справляется и сваливается в репроекции (ASW — Asynchronous SpaceWarp) на половинной частоте обновления экрана. Их можно выключить, но НЕ в гонках и НЕ симуляторах с ними будет лучше(если видеокарта только иногда в них сваливается. Это можно увидеть включив Visible HUD prformance в OculusDebugTool.


ВНИМАНИЕ 1.1! При активации и снижении fps из-за ASW карта может быть нагружена НЕ на полную, это нормально, так как карта не справилась с полной нагрузкой и начинает справляться хотя бы с половиной. Поэтому при этом нагрузка видеокарты в районе 55-90% это норма. Пока не опустится до стабильных <50% нагрузки fps не восстановится, так как мощностей все еще мало. Адаптивный ASW может немного поменять ситуацию. Включать его через отдельную программу Oculus tray tool.


ВНИМАНИЕ 2! На разных видеокарточках(далее GPU) с разной производительностью настройки могут отличаться. В первую очередь стоит снижать разрешение рендера.


ВНИМАНИЕ 3! На картах AMD из-за более слабого кодировщика выставление битрейта и encoding width может давать лаги.


ВНИМАНИЕ 4! Если происходят проблемы с производительностью на любых настройках, то может помочь переустановка с удалением остатков и настроек SteamVR beta, и ПО Oculus.


ВНИМАНИЕ 5! Не забывайте обновлять драйвера для видеокарт, Nvidia в начале 2021 года сильно исправили работу в VR.

Все настройки аналогичны предыдущей инструкции, кроме первого пункта. В OculusDebugTool обязательно выставить Encode bitrate 0 и перезапустить программу, как сказано выше.

  1. Важно определить максимальный возможный битрейт на вашем роутере, так как по умолчанию используется динамический плавающий битрейт с ограничением в 100мбит. Битрейт зависит от скорости вашей wifi сети и качества роутера (а не только теоретические цифры скорости с его коробки) и того, как подсоединен ПК к роутеру (для нормальной работы обязательно подключение по 1000мбит(1Гбит) кабелю)
  2. Динамический битрейт дает лучшую стабильность, но качество картинки может прыгать.
  3. Если выросла задержка и картинка лагает, значит роутер или видеокарта не справляется, снижайте битрейт.
  4. AirLink немного увеличивает задержку (на 10-15мс), но это сильно зависит от мощности роутера.
  5. При одинаковом битрейте картинка по AirLink и проводному Link одинаковая. Но из-за бОльшего максимального битрейта и стабильности, по проводу картинка все-таки стабильнее.

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

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