Итак, я собрал комплект VR для ПК из доступных технических средств. Часть из них есть у каждого уважающего себя геймера, часть можно приобрести у китайцев или на Авито/Юле. Представляю вашему вниманию полную инструкцию по сборке наиболее доступного комплекта VR на данный момент на основе контроллеров PS Move и камер PS Eye.
Что нам понадобится
Для начала, мы должны обладать телефоном с неплохим разрешением экрана. В идеале — не менее, чем FullHD. Желательно, чтобы телефон был оснащен датчиками положения в пространстве, такими, как гироскоп акселерометр и магнетометр. Второе условие не обязательно, датчики легко заменяются другими средствами.
У нас в любом случае должен быть компьютер, без него никак. Он должен соответствовать минимальным требованиям для VR игр:
- Windows 7 SP1 или более поздняя версия;
- Intel I5-4590 или AMD FX 8350;
- 4 Гб ОЗУ;
- NVIDIA GeForce GTX970 или AMD Radeon R9 290.
В идеале в компьютере должен быть хотя бы один порт USB 3.0. Это требование также не обязательно, просто чем выше версия USB, тем выше качество трансляции видео и меньше задержка данных с датчиков телефона.
Если вы хотите соединить очки по беспроводной связи, у вас должен быть домашний Wi-Fi стандарта 5G, роутер должен поддерживать стандарт 802.11 АС. Можно обойтись и проводным соединением, но в этом случае будут мешать провода.
Что нужно докупить
Для начала нам необходимы очки виртуальной реальности, в которые будет помещаться смартфон. Самый простой вариант – заказать с Китая или купить на Авито/Юле. Есть много очень дешевых вариантов, для наших целей подойдет любой. По сути, очки для нас – это лишь корпус с линзами и ремешком для того, чтобы мы могли пристроить мобильник на голову. На телефон будет стримиться картинка через специальную программу.
Для соединения телефона с компьютером я использую провод micro USB, который используется для зарядки большинства моделей смартфонов. При желании можно купить более длинный провод, но я не советую брать слишком большой, так как от длины будут потери данных, что скажется на качестве сигнала. У меня трехметровый кабель, никаких проблем нет.
Для трансляций отлично подойдет приложение Rift cat – это самый лучший вариант для игр Steam VR. Есть еще Trinus, но это приложение для обычных игр. Для VR оно тоже подходит, просто придется покопаться с настройками. Есть и другие приложения, но озвученные – самые распространенные.
С таким комплектом можно играть в некоторые игры, которые не требуют контроллеров. Например, гонки или космические симуляторы – Euro Truck Simulator, Everspace, Subnautica и DiRT Rally. Для полных возможностей в VR-играх мы можем прибегнуть к использованию наиболее дешевого варианта контроллеров.
Я остановился на контроллерах PS Move как на самых дешевых аналогах, предоставляющих умеренно полноценный функционал, сравнимый с более дорогими вариантами. Для их подключения нам потребуются:
- Непосредственно сами контроллеры в количестве двух штук. Можно взять три и использовать один из них для трекинга очков, но это не обязательно.
- Bluetooth-адаптер для соединения контроллеров с компьютером без использования проводов. Желательно брать версию 4.0, такой адаптер будет обладать наибольшей скоростью. Недорогие варианты можно найти у китайцев.
- Провод mini USB для первоначальной настройки контроллеров.
- Камера PS Eye для слежения за положением очков и контроллеров внутри комнаты и отслеживания занимаемого ими места в пространстве. Для пробы работоспособности хватит и одной камеры. Для игры без тряски нужно две камеры, для поворотов на 360 градусов —3 камеры. А для полноценного использования без потерь видимости контроллеров лучше всего подходит набор из 4 камер, расставленных равномерно по всем сторонам комнаты. Могут потребоваться ещё и удлинители для камер. Я воспользовался двумя удлинителями на 2,5 метра и одним трехметровым.
- Для крепления камер придется придумать какие-либо кронштейны. Я использовал строительные уголки и канцелярские прищепки. Это дешево и… Все.
Камеры необходимо разместить по комнате и переключить их объективы на более широкий угол обзора. Для калибровки рабочего пространства и понимания координат программой нам потребуется шаблон с вот таким рисунком. Его можно распечатать на принтере или нарисовать на листе А4.
Необходимые программы
Для начала нам потребуется приложение, которое обеспечивает работу камер и контроллеров. Называется оно PSMoveService. Желательно скачивать максимально новую версию. Для соединения программы со SteamVR надо закинуть файлы PSMoveSteamVRBridge в папку с программой.
Так же нам придется воспользоваться двумя следующими программами: USBDeview для просмотра всех активных устройств и Zadig для замены драйверов камер, которые поставит наша винда, на более правильные, с которыми сможет работать программа PSMoveService. С помощью первой мы можем посмотреть, через какой интерфейс подключены камеры. Как правило, это интерфейс 0. Это нужно для того, чтобы не перепутать драйвера камер с драйверами их же микрофонов и установить все, как полагается.
С помощью Zadig мы будем менять стандартные драйвера на те, что нужны для работоспособности данной системы. В окне программы открываем верхнее меню Опции и выбираем Отобразить все устройства. Крутим вниз и находим камеры. В правом окошке меняем драйвер на версию libusb-win32 и нажимаем кнопку Переустановить драйвер. Эти действия позволят программе PSMoveService получать доступ к камере и управлять ей полноценно. Проверить функциональность камер после этих действий мы можем, запустив файл test_camera, находящийся в папке с остальными программами комплекта PSMoveService.
Теперь соединить контроллеры с компьютером. Для этого вставляем Bluetooth-адаптер в компьютер и ждем, пока Windows установит на него стандартный драйвер. Для начала настройки запускаем главный исполняющий файл программы PSMoveService и, после того, как он загрузится, запускаем программу его настройки PSMoveConfigTool. Им мы будем пользоваться только тогда, когда нам нужно откалибровать или перенастроить систему.
В окне программы ConfigTool выбираем пункт Controller settings и смотрим на верхнюю строчку. Там должен отображаться адрес нашего Bluetooth-адаптера в виде 12 цифробуквенных значений, разделенных двоеточием по два символа. Если адрес отображается, значит мы все сделали правильно. Если нет, то вариантов несколько. Самый неприятный — ваш Bluetooth не поддерживается программой. Менее неприятный — на него установился драйвер, не поддерживаемый программой, и его надо заменить на какой-либо другой.
Если адрес Bluetooth отображается, то переходим к присоединению контроллеров. Для этого подключаем PS Move к компьютеру через кабель mini USB. В окне появляется кнопка с надписью Pair USB, на которую мы и должны нажать. После чего программа скажет нам нажимать кнопку PS всякий раз, когда индикатор начинает мигать медленно, и ждать, когда он мигает быстро. Продолжаем эти действия до тех пор, пока настройка соединения не дойдет до конца. Повторяем эти действия для всех остальных контроллеров.
После соединения контроллеров мы должны их откалибровать. Для этого в той же программе ConfigTool в разделе Controller settings выбираем нужный нам для калибровки контроллер и жмем кнопку Calibrate Magnitometr. Берем контроллер в руку и вращаем им во всевозможных направлениях, пока полоса калибровки не дойдет до конца.
Далее на том же контроллере запускаем калибровку гироскопа. Оставляем его в том же положении, что и после калибровки магнитометра. Программа откалибрует стартовое положение контроллера. После нажатия кнопки ОК мы сможем приравнять стартовое положение контроллера к тому, которое сочтем правильным, при помощи одновременного нажатия кнопок Select и Start.
Далее переходим к настройке цветовых индикаторов, которые будут распознаваться камерами и определять положение контроллеров внутри игровой комнаты. Для этого заходим в меню Tracker settings и выбираем пункт Calibrate Tracking Colors. После чего нужный нам контроллер загорится определенным цветом, который при желании можно поменять в настройках.
Теперь переходим к настройке системы координат, чтобы программа понимала, как именно отслеживать контроллер, и как рассчитано пространство в комнате. Для этого нам понадобится шаблон на листе А4, описанный ранее. Необходимо разместить шаблон на столе или табуретке ровно по центру между камерами. Затем взять контроллер и положить его в точке 1 на шаблоне. В Tracker settings запускаем Calibrate tracker poses. После того, как программа закончит настройку первой точки, переходим ко всем остальным по очереди. По окончанию установки на мониторе будет отображено положение компьютера в виртуальном пространстве.
Далее нам надо подружить программы комплекта PSMoveService c сервисами Steam VR. Для этого внутри той же папки нужно запустить несколько исполнительных файлов по очереди. Начнем с Steam InitialSetupWin64. Запускаем и выбираем расположение папки с Steam VR. Нам нужно переустановить драйвер для Стима. Запускаем файл SteamVr_reinstallDriverWin64, и после появления командной строки с надписью «Нажмите любую кнопку, чтобы продолжить» делаем то, что от нас просят и закрываем окно.
Теперь идем в папку настроек Steam VR внутри директории самого Стима. Находим там файл steamvr.vrsettings, открываем при помощи блокнота и смотрим наличие записей «activateMultipleDrivers»: true, что позволит играм принимать контроллеры PS Move совместно с контроллерами от Oculus или HTC. Если все правильно, то сохраняем и закрываем документ.
После этих действий мы уже можем запустить PS Move и увидеть наши контроллеры в действии. Но в случае, если одним из контроллеров мы захотим управлять положением головы в виртуальном пространстве, нам потребуется программа FreePie и её плагин Freepie Bridge к программе PSMoveService. Скачиваем обе части программы и устанавливаем Freepie на компьютер. После чего в отдельную папку закидываем файлы Freepie Bridge и, для упрощения запуска в будущем, в нее же кидаем ярлык для запуска программы Freepie Bridge. Программа позволит запускать скрипт, который будет отслеживать световой индикатор выбранного контроллера и переводить его в движения наших виртуальных очков. Для начала работы скрипта запускаем программу, открываем файл Freepie example script, после чего выбираем пункт script — run script. Теперь он работает, но нам надо указать программе, какой из контроллеров будет являться нашими очками.
Запускаем файл PSMoveFreepieBridge и в диалоговом окне выбираем, что именно будет отслеживаться для того, чтобы включить слежение за определенным контроллером. Привязывая его значения к очкам, мы выбираем пункт 2 controllers. Далее программа спрашивает, сколько контроллеров нужно отслеживать. Выбираем 1.
Нам будет предложено выбрать id конкретного контроллера, который будет выступать для этих целей. Посмотреть id мы можем в программе PSmoveConfigTooll, он начинается от 0 и далее зависит от их количества. Например, у меня это 0, 1 и 2. Выбираю последний, так как два первых обычно распознаются в роли контроллеров автоматом, и поэтому, если я выберу один из них, то третий контроллер может не включиться при запуске Steam VR. Далее нас спросят, включить ли возможность выбора цвета индикатора. Отказываемся, прописывая букву n, а на запрос об оси координат пишем -1.
Последним пунктом будет указание адреса того контроллера, что мы используем в роли трекера головы в файле настроек Steam VR. Вписываем его в этом поле. А посмотреть адрес мы можем в конфигурациях.
На этом настройка и калибровка комплекта заканчивается, и более при следующих запусках нам ничего подобного делать не придется. Все, что будет нужно, это включить контроллеры и запустить программу для их отслеживания PSMoveService. В случае, если вы используете телефон, нужно будет запустить программу для его отслеживания. Например, Rift cat. Если вы подменяете одним контроллером управление очками, то производим запуск программы freepie и Freepiebridge. Все это можно настроить до 1 клика, если использовать программы, производящие автозапуск нужных нам приложений. Например, Autohotkey.
Да, начальная настройка сложная, но такова цена экономии. Да и к тому же выполнить её надо будет всего однажды. Любой компонент можно заменить. Например, вместо мобильного VR использовать очки Oculus, и все будет работать так же.
Видео подробной настройки из этой статьи
Тест