Содержание
Очередь просмотра
Очередь
- Удалить все
- Отключить
![]()
Хотите сохраните это видео?
- Пожаловаться
Пожаловаться на видео?
Выполните вход, чтобы сообщить о неприемлемом контенте.
Понравилось?
Не понравилось?
Текст видео
Короткое руководство, как улучшить качество картинки в шлемах виртуальной реальности, работающих в Steam VR либо в платформе Oculus.
Не все знают о такой штуке, как суперсэмплинг, хотя он используется для улучшения качества картинки уже довольно длительное время, и не только в виртуальной реальности. Этот метод рендерит картинку более высокого разрешения перед тем, как подать её на конечный дисплей. Это позволяет получить более четкие, резкие очертания без лесенок.
На сегодняшний день эти настройки доступны для оптимизации прямо в SteamVR, а также в Oculus Debug Tool (для владельцев шлемов Oculus Rift).
Помните, что суперсэмплинг очень сильно нагружает видеокарту, поэтому адекватно оценивайте возможности вашего компьютера. Если рекомендуемые значения суперсэмплинга в Steam VR стоят меньше 100%, то скорее всего вам нужно обновить конфигурацию ПК, либо понаблюдать за активными приложениями на предмет майнеров и других вредоносных программ, пожирающих вычислительные ресурсы вашего компьютера.




![]()
![]()
| 2,350 | уникальных посетителей |
| 91 | добавили в избранное |













В данном руководстве затронуты очень важные возможности и настройки SteamVR. Про которые как мне кажется нужно обязательно знать всем владельцам шлемов виртуальной реальности (VR), совместимых с SteamVR (OpenVR).
Суперсэмплинг, он же полноэкранное сглаживание, он же Full-scene Anti-aliasing (FSAA), он же Supersample anti-aliasing (SSAA) — самая старая разновидность антиалиасинга. Полноэкранное сглаживание позволяет устранить характерные «лесенки» на границах полигонов. Многие современные разновидности сглаживания в VR работают крайне плохо, и выглядит это как правило как "мыльное" изображение, за исключением возможно MSAA и TXAA, но зависит от конкретной реализации.
Повышая разрешение рендеринга с помощью настройки суперсемплинга можно получить очень приятную для глаз картинку в игре. Однако следует учитывать, что полноэкранное сглаживание потребляет немало вычислительных ресурсов, что приводит к падению частоты кадров (как с этим бороться смотрите в той части руководства в которой говорится о репроекции кадров). Вероятно самый лучший вариант это комбинировать суперсэмплинг с MSAA или TXAA, если данные типы сглаживания присутствуют в игре или приложении.
В SteamVR есть две настройки суперсемплинга одна для игр и приложений, вторая для VR интерфейса Steam (так же называют его "Дашбоард", Dashboard, Compositor). Настройка происходит, через интерфейс SteamVR, через конфигурационные файлы или через вспомогательные утилиты, такие как OpenVR-AdvancedSettings.
Суперсемплинг в SteamVR задается процентами, во вспомогательных утилитах или в файлах конфигурациях SteamVR задается коэфицентами.
Примеры:
20% = 0.2
100% = 1.0
153% = 1.53
400% = 4.0
100% или коэффициент 1.0 обозначает стандартное разрешение рендеринга для шлема, оно немного больше чем разрешение экранов.
Больше 100% или коэффициент больше 1 будет означать увеличение разрешение рендеринга, а значит и повышения требования к "железу", Меньше 100% или коэффициент меньше 1 будет приводить к уменьшению разрешения рендеринга и снижению требования к "железу" для данного приложения или игры.
Игра или приложение может иметь свои внутри игровые настройки, которые могут умножать ваш процент/коэффициент на настройки игры, а может игнорировать ваше значение, в каждом приложении или игре может быть по своему. Собственно внутри игровая настройка суперсемплинга как правило не устраивает многих тех кто любит настраивать суперсемплинг (разные обозначения, либо вообще ползунок без обозначений, либо настройка уровня графики еще включает другие типы сглаживания и другие настройки, либо настройки попросту нет). Но если настройки суперсемплинга из SteamVR не применяются к игре то выбора особо не остается и приходится пользоваться исключительно внутри игровыми настройками.
Для того чтобы показать как происходит умножение процентов и коэффициентов, вот несколько примеров:
100%*150%=150% (1.0*1.5=1.5)
150%*150%=225% (1.5*1.5=2.25)
Самый простой способ настраивать суперсемплинг — настраивать его через десктопный интерфейс SteamVR, то есть через то самое небольшое окно SteamVR что выводится на рабочий стол. Чтобы открыть настройки нажмите в верхнем левом углу на надпись SteamVR и выберите "Настройки". В окне настроек выберите раздел "Производительность" ("Video").
В этом окне по умолчанию не установлен режим управления суперсемплингом в ручную.
SteamVR при запуске производит короткое тестирование производительности видео карты и на ее основе выставляет рекомендуемое для вашей видеокарты значение суперсемплинга. Если вы установите в этом окне галку ручного управления, то увидите это значение.
Например для шлема HTC Vive будет предлагаться следующие значения для разных видеокарт:
GTX 970 = 100% (разрешение рендеринга на один глаз — 1512×1680)
GTX 1060 = 100%
GTX 1070 = 130%
GTX 1080 = 180%
GTX 1080Ti = 200% (разрешение рендеринга на один глаз — 2138×2376)
(200% это ограничитель в SteamVR для предлагаемых значений, на стадии беты данный функционал для данной карты выставлял значение от 2.3 до 2.5 в зависимости от той или иной модели видеокарты 1080Ti)
Ползунок и есть настройка общего суперсемплинга для VR игр и приложений. После изменения значения изменение суперсемплинга для приложения или игры подействует сразу (если нет, то откройте и закройте дашборд, по системной кнопке на контроллере). Для большинства игр и приложений не требуется перезапуск, если изменения не вносят корректировку в качество изображения(чтобы убедится возможно стоит в более широком диапазоне проверить выставляя например очень низкие значения) то либо приложение автоматически меняет суперсемплинг самостоятельно, либо настраивается только своими встроенными настройками или нужно выполнить перезапуск игры/приложения для применения настроек SteamVR.
Здесь же в окне вы можете видеть разрешение рендеринга на один глаз в пикселях.
Кроме того для того чтобы не настраивать данный ползунок каждый раз при запуске другой новой игры, предусмотрена корректирующая настройка для каждого отдельного приложения. Вы можете выставить в разделе настроек "Производительность" ("Video") постоянный коэффициент или оставить автоматический режим который выставит значение которое лучше подходит для видеокарты по мнению SteamVR и на закладке "Приложения" ("Applications") выбрать корректировку суперсемплинга с помощью ползунка именно для этой игры.
Если игра у вас запущена название игры в ниспадающем поле выбора игры подставится автоматически, если вы игру запустили после того как открыли данный раздел настроек, можно переключиться на другой любой раздел настроек и вернуться снова в раздел "Приложения" и игра подставится автоматически.
Выставленное значение будет сохранено и применяться автоматически при каждом запуске игры.
Рассмотрим пример:
Предположим что у вас Vive и GTX 1070, и в настройках "Производительность" у вас включена автоматическая установка значение суперсемплинга (галочка снята), ориентировочно значение у вас там будет 130% (1.3).
В настройка "Приложения" для конкретной игры установлено в 110%
Значит итоговое значение суперсемплинга SteamVR у вас будет 130%*110%=1.3*1.1=1.43 или 143% от разрешения рендеринга по умолчанию для шлема. (не забывайте что игра может иметь и свою настройку внутри игры, можно оставить ее равной 100% или 1.0, и управлять только из SteamVR, иначе вам нужно и эту настройку внутри игры учитывать аналогично).
К сожалению на текущий момент нельзя менять суперсемплинг для интерфейса "Дашборда" через настройки SteamVR, см. другие варианты далее в руководстве.
Теперь о том как настроить через конфигурационные файлы, это способ для тех кто любит трудности. Данный способ не рекомендуется тем кто не знает синтаксиса файлов JSON (JavaScript Object Notation).
И так, как настроить через конфигурационные файлы:
Добавьте в файл steamvr.vrsettings (расположенный в папке steamconfig) следующий раздел между другими в любой его части или найдите уже существующий раздел и откорректируйте значение:
Запятая в конце раздела говорит о том, что это не последний раздел в конфигурационном файле (а мы его добавляем как раз где-нибудь в середине между другими разделами).
Поменяйте коэффициент 1.4 на тот который вы желаете. Таким образом настраивается суперсемплинг для Дашборда (Compositor).
Найдите в этом же файле раздел:
Данный способ в настоящий момент не позволяет воспользоваться всеми возможностями которые появились в последних версия SteamVR, но данный раздел руководства оставлен так как хочется верить что программа OpenVR-AdvancedSettings получит обновления функционала в ближайшее время. В настоящий момент OpenVR-AdvancedSettings не поддерживает индивидуальные настройки суперсемплинга "на приложение".
Можно использовать OpenVR-AdvancedSettings для настройки суперсемплинга прямо из VR.
Кроме настройки суперсемплинга программа имеет массу других полезных функций, которые не рассматриваются в данном руководстве.
Как настраивать в OpenVR-AdvancedSettings:
Для установки скачайте последний релиз от сюда — https://github.com/matzman666/OpenVR-AdvancedSettings/releases — файл будет называться что-то вроде OpenVR-AdvancedSettings-Installer-v.2.X.X.exe (рекомендую именно этот вариант, а не вариант с архивом для ручной установки), файлы со словами "Source code" это исходники их качать не нужно.
Для установки программы просто запустите скачанный файл, и следуйте инструкциям. Установку следует выполнять при закрытом SteamVR .
После установки у вас появится дополнительная кнопка в Дашборде Steam:
Нажмите ее и перейдите в раздел SteamVR, для регулировки суперсэмплинга используйте два верхних ползунка.
Первый для настройки суперсэмплинга в приложения и играх, второй для Дашборда Steam-а:
Верхний ползунок отвечает за общую настройку суперсемплинга приложений и игр меняет настройки сразу без необходимости перезапуска SteamVR (и для игр тоже, для большинства перезапускать их не нужно, но как ранее говорилось некоторые игры могут игнорировать настройки SteamVR).
Данный ползунок будет работать если у вас в настройках SteamVR включено ручное управление суперсемплингом. (установить галку в разделе "Производительность")
К сожалению после обновлений SteamVR в апреле 2018г. настраивать корректирующие настройки для отдельных приложений в данной программе пока нельзя, ждём обновлений программы.
Для настройки суперсемплинга дашборда, используйте второй ползунок, нажмите Restart SteamVR в нижнем правом углу, произойдет перезапуск SteamVR, шлем можно не снимать, перезапуск произойдет относительно быстро.
Какие значения коэффициентов выставлять — все зависит от производительности вашей системы, требований самой игры или приложения к системе, ваших личных ощущений "плавности картинки" игры или приложения.
Если вы новичок в VR возможно имеет смысл общее значение суперсемплинга оставить в автоматическом режиме, и регулировать только значения для отдельных игр и приложений.
Корректирующие значения для приложений (раздел настроек "Приложения") по умолчанию выставлены в 100% что фактически означает, что будет браться общее значение (раздел настроек "Производительность").
В той или иной игре значение приемлемое для вас может быть очень разным. Выбирайте пробуйте и экспериментируйте.
Стоит упомянуть, что в некоторых играх может иметься такой функционал как
"Динамическое разрешение", который может изменять настройки суперсемплинга на ходу. И игра при этом может ориентироваться (брать как максимальное значение для своего некоторого диапазона) или игнорировать значения которые вы выставите в настройках, игра будет при этом менять значения суперсеплинга в зависимости от загруженности вашей видеокарты. Яркие примеры таких игр :
Doom VFR — игнорирует ваши настройки, можно отключить динамическое разрешение через консоль
PAYDAY 2 — использует ваши настройки как ориентир, можно отключить динамическое разрешение через настройки игры
The Elder Scrolls V: Skyrim VR — использует ваши настройки как ориентир, можно отключить динамическое разрешение через настройки игры
The Lab, SteamVR Home — использует ваши настройки как ориентир, нельзя отключить динамическое разрешение, так же управляет автоматически сглаживанием MSAA.
Коэффициент для дашборда влияет только на сам интерфейс Steam-а в VR, но выкручивать его слишком много не имеет смысла, да картинка будет радовать глаз в интерфейсе, но во время запущенной игры при нажатии системной кнопки (которой вы вызываете интерфейс Steam) вы можете получить приличные "лаги". Рекомендуем использовать значения в диапазоне от 1.0 до 1.5 в зависимости от мощности видеокарты.
Хочу обратить внимание, что базовое понимание настроек репроекции (Reprojection) кадров, очень важно для обладателя шлема виртуальной реальности, неверная настройка может серьезно сказаться на получении хорошего впечатления от VR.
Немного теории. Asynchronous Reprojection, Interleaved Reprojection — это функционал SteamVR предназначенный для предотвращения появления пропущенных кадров в тех случаях когда приложение или игра не способна выдавать 90 fps. Производится это путем репроекции предыдущего кадра таким образом чтобы у пользователя сложилось впечатление, что это новый кадр (даже не смотря на движение шлема), то есть чтобы сложилось впечатление, что приложение или игра продолжает успевать выдавать новые кадры с частотой 90 fps или что то же самое, что не реже чем 1 кадр за 11мс. Отличия:
- Interleaved Reprojection — репроекцируется каждый второй кадр, то есть от приложения уже не требуется 90 fps, достаточно 45 (или кадр за 22мс). Это снижает требования к приложению/игре. Но тем не менее есть и минусы, если при повороте головы вам все еще будет казаться что плавность сохранилась как при 90 fps то у близких объектов (руки или оружие) или быстро перемещающихся объектов будут заметны артефакты двоения или ряби. При включенной опции, режим Interleaved Reprojection в процессе игры будет включаться автоматически как только кадр не будет готов за отведенные 11 мс, выход из это режима будет происходить так же автоматически по определенному алгоритму, в режим стандартных 90 fps.
- Asynchronous Reprojection — последний и пока самый новый способ репроекции, репроекцируется не каждый второй, а предыдущий кадр только в том случае если приложение/игра не успевает отрендерить в положенные 11мс новый кадр. Визуально этот вид репроекции самый лучший.
Рекомендую для большинства игр включить Asynchronous Reprojection и выключить Interleaved Reprojection — если у вас карта от Nvidia. Для карт AMD оставить Interleaved Reprojection включенным, так как Asynchronous Reprojection не поддерживается на текущий момент (кроме AMD RX 400-ой и 500-ой серии, в последних драйверах Asynchronous Reprojection по идеи должен поддерживаться, если у вас работает, напишите в комментариях) .
Одновременное использование Asynchronous Reprojection и Interleaved Reprojection не всегда приводит к хорошему результату. Я рекомендую при наличии каких либо графических опций (в том числе и суперсемплинг как SteamVR так и внутри игровой) настраивать так чтобы вы себя чувствовали комфортно(не было лагов вызванных снижением частоты кадров которые видеокарта успевает генерировать) при включенном Asynchronous и выключенном Interleaved репроекциях.
Потеряло актуальность, настройки более не доступны.
Потеряло актуальность, настройки более не доступны.
Как настроить в SteamVR, откройте настройки SteamVR, разделе "Разработчик" ("Developer"):
(На скриншоте рекомендуемый вариант, так же обратите внимание с левой стороны внизу можно наблюдать текущее состояние Asynchronous Reprojection — "Асинхронная репроекция включена", если не работает — есть какая то проблема, возможно ваша видеокарта или драйвер не поддерживает данный вид репроекции)
Так же стоит обратить на опцию "Перевести репроэкцию в режим постоянного функционирования" (Always-On Reprojection) ее рекомендуется НЕ включать, (возможно есть смысл включать в играх где вы не шевелите шлемом и/или ближайшее окружение вокруг вас не подвижное, то есть для не активных игр типа Project CARS2), данная опция высвободит немного времени CPU но ухудшит трекинг шлема. В определенных сценариях так же можно производить настройки игры для работы без репроэкций вообще и с включенной данной опцией, и с настройкой суперсемплинга так чтобы игра выдавала стабильные 90 fps на всем протяжении игры, но вы должны понимать что вы делаете, в общем для пользователей с опытом. Не забудьте вернуть настройки назад после экспериментов с этой опцией, при неправильном использовании данной опции можно получить неприятные лаги в играх.
Потеряло актуальность, настройки более не доступны.
Как установить OpenVR-AdvancedSettings раннее мы уже выяснили.
Для настройки репроекции кадров в этой программе, откройте программу в VR:
И перейдите в раздел SteamVR:
Три нижних чекбокса, настраивают репроекции, изменения вносятся "на лету", перезапуск SteamVR не требуется. Какие репроекции и как настраивать рассказано ранее в данном руководстве. (На скриншоте рекомендуемый вариант)
При запуске ненативных VR игр через Vitual Desktop или Bigscreen, как в обычном режиме кинотеатра, так и в режиме 3D, пользователь может столкнуться с низкой производительностью и лагами в самом шлеме (игра на мониторе при этом может идти плавно и с большим fps).
При этом с относительно старыми играми проблем может и не быть, но с новыми они точно проявятся. Проблема заключается в том, что, в отличие от CPU(процессора), для GPU(видеокарты) нельзя назначить приоритет выполнения приложения, а у нас имеются два одновременно работающих 3D приложения (игра и программа, выводящая изображение в шлем) и у игры должен быть меньший приоритет, иначе в шлеме будут тормоза и лаги при 100%(или близкой к ней) загрузке GPU.
Избавление от лагов в шлеме
Чтобы свести данную проблему к минимуму, можно использовать ограничение fps в самой игре (если такая возможность в ней присутствует) либо программу Riva Tuner. Она поставляется в комплекте с утилитой MSI Afterburner, которая позволяет разгонять и мониторить параметры видеокарты. Riva Tuner же служит для вывода самих параметров во время игры в оверлее. Скачать последнюю версию можно с официального сайта MSI.

Запускаем Riva Tuner и добавляем exe-шник игры кнопкой "Add", выбираем его в появившимся списке и ставим ограничение fps справа в поле "Framerate limit". Таким образом, у нас остаются ресурсы видеокарты для захвата раб. стола (и игры на ней), т.е. загрузка GPU становится ниже 99%. Ставить лучше 60 или ниже. Выше 60 ставить нет смысла, т.к. раб. стол захватывается именно с такой частотой. С некоторыми играми, например, Quantum break (она отлично работает в 3D) 60 fps получить очень сложно, поэтому, возможно, придётся снижать настройки в игре, особенно на нетоповых видеокартах, ведь нагрузка на неё вырастает в два раза в 3D режиме. По моему опыту, при загрузке GPU не выше 80-85% лагов в шлеме не наблюдается. Проверить загрузку можно в MSI Afterburer.
Кроме того, fps можно ограничить и глобально(самая верхняя строчка "Global") для всех программ, потому что ограничение fps, выставленное в Riva Tuner не распространяется на программу Virtual Desktop или Big Screen, а также на игры, которые рендерят изображение напрямую в шлем, не выводя "зеркало” на экран компьютера. В большинстве же игр с поддержкой VR (Fallout 4 VR, Beat Saber и т.д) fps будет ограничен и в шлеме, что повлечет за собой лаги и тормоза, т.к. обычно частота обновления экранов равна 90 Гц. Не забывайте отключать ограничение в этом случае, а также при игре в обычные игры на ПК. Чтобы отключить ограничение, достаточно прописать 0 в том же поле.
Улучшение качества картинки в шлеме
После этого желательно создать через панель Nvidia пользовательское разрешение с соотношением сторон близким к квадрату, например, 5:4. Соотношение стандартных экранов 16:9 в VR, по моему мнению, бесполезно, т.к. экраны большинства VR шлемов имеют соотношение, близкое к 1:1. Соответственно, либо будут полосы сверху и снизу, либо будет пропадать полезное изображение слева и справа (в зависимости от выставленного масштаба в Virtual Desktop). Разрешение можно ставить больше, чем поддерживает монитор или шлем, тогда будет чётче картинка в VR. Фактически, это будет являться суперсемлингом.
Для создания пользовательского разрешения необходимо:
- Открыть панель управления Nvidia
- Перейти на вкладку "Дисплей" и "Изменение разрешения"
- Нажать на кнопку "Настройка" и "Создать пользовательское разрешение"
- Ввести необходимое разрешение в первые два поля и поддерживаемую дисплеем частоту развертки. Стоит придерживаться распространенных соотношений(в данном случае 4:3 и 5:4), так как интерфейс большинства игр заточен именно под такие соотношения сторон и с нестандартным могут быть проблемы.
- Нажать "Тест". Экран моргнет, переключится на выбранное разрешение и предложит сохранить его. Нажмите кнопку "Сохранить".
- Разрешение появится в списке. Для его выбора поставьте рядом с ним галочку и нажмите "Ок".
Потом выставляем это разрешение в настройках самой игры. У меня созданы такие разрешения:

Важно отметить, что некоторые игры, например, Metro 2033 (и последующие части) не имеют возможности выставления соотношения сторон в настройках и берут его у самого большого разрешения, которое "поддерживает" монитор (мы создали своё, и игра считает его нативным), поэтому, если запустить игру на разрешении с другим соотношением сторон, изображение будет сплюснуто. Если снова захочется поиграть на десктопе с соотношением 16:9 без искажений, придется удалять пользовательские разрешения. Тут уже только остаётся предъявлять претензии к разработчикам игр.





