Сегодня расскажу Вам о том, как можно изготовить очки виртуальной реальности своими руками, без телефонов (Трафик!):
ПРЕДИСЛОВИЕ
На данный момент НЕТ официального стандарта для VR очков/маски и тому подобных вещей. Про Oculus, HTC, Samsung, Sony и тд. нет смысла говорить и сравнивать. Это просто устройства с отличающимся функционалом + / -, какие-либо примочки. Тут нет смысла спорить о том, что такое VR, все видят по-своему.
Мне давненько хотелось поиграть с такого рода вещами, но телефонные очки меня не прельщают, неудобно, тяжело и мало приложений, плохая синхронизация с пк, батарея телефона, задержка по радиоканалу.
В процессе работы над своим экспериментом было выделено 2 нюанса важных для меня:
1. Трекинг головы.
2. Дисплей вместо телефона.
Исходя из этих нюансов я и занялся постройкой агрегата.
Скажу сразу, вещь сама в себе и не претендует на качество, каждый может повторить изготовление этого шлема исходя из полученных инструкций.
КОМПЛЕКТУЮЩИЕ
Для очков мне понадобились следующие комплектующие:
Вся ответственность, а именно самостоятельное проникновение в корпус готового изделия с последующим нарушением его целостности работоспособности, лежит на человеке совершившим это действие.
Корпус:
Корпус придется собирать под матрицу отдельно, в связи с тем, что матрица довольно объемная и требуется другое фокусировочное расстояние. Требуется замена линз. Из этого корпуса будет взята прикладывающаяся к голове и носу часть.
Контроллер:
Основная задача стоит в синхронизации контроллера с матрицей, то что контроллер и матрица заработают я знал, а вот получу ли я нужное разрешение — это другой вопрос.
Мой дисплей имеет соотношение сторон 16:9 и разрешение, которое укладывается в диапазон 1920х1440.
Проблема состоит в том, что контроллер имеет не то разрешение, и его надо прошить.
Изначально, при подключении дисплея, вместо картинки я получил набор полос. (Даже подумал, что накрылся сам дисплей).
Но через некоторое время (при подключению к компьютеру) стало ясно, что дисплей что-то выводит, но видно что у него проблема с синхронизацией и разрешением.
При прошивке перебрал не один десяток и остановился на данной версии:
Теперь при подключении к компьютеру, дисплей отображает информацию, о том, что подключен разъем HDMI и предлагает разрешение 1024х600. При это дисплей активно пытается получить сигнал с VGA, при этом выходит сообщение — «Подключите кабель VGA».
Пришлось снова чесать голову. Данный контролер является прямым аналогом плат с большим количеством разъемов, например:
А значит надо на свой контроллер распаять кнопки, что-бы можно было настраивать дисплей и переключать режимы работы. Схему для разъемов прилагаю, кнопки висят на 53 ноге чипа:
На всякий случай прикладываю схему чипа RTD2660:
После прошивки и переключения контроллера в режим HDMI. Дисплей стал стартовать из под WIndows 7, велико было мое удивление, когда помимо родного, наитивного разрешения 1024х600, я смог установить разрешение 720p и 1080p. При 720р работает отлично не искажается, а вот в 1080р уже шрифты не читаются, но точно так же держит его, сюрприз, запускать игры в 720р веселей чем в 1024х600 (не все игры поддерживают низкие разрешения).
Матрица :
Я уже игрался в очках на телефоне, разрешение составляло 960Х540. Запускал Half-life 2, Portal, но не нравилось, то что это телефон и то что нельзя осмотреть пространство головой, вращал мышью + задержки по Wi-fi, просто бесили и не давали играть. В целом пиксели видно, но мне все-равно понравилось.
Из ящика с запчастями была извлечена матрица 1024х600 размером 7 дюймов, парт номер 7300130906 E231732 NETRON-YFP08. Исходя из доступного разрешения матрицы можно сделать вывод, что для каждого глаза разрешение будет составлять 512х600, что чуть больше чем разрешение экрана телефона и самое важное, будут отсутствовать задержки.
Коннектор матрицы имеет 50 пин и полностью совместим с контроллером дисплея.
Для достижения максимальной контрастности и сочности изображения, с матрицы придется снять матовую пленку. Так как изделие будет закрытое, то какие-либо блики не страшны.
Доработка матрицы осуществляется в 7 этапов:
1. разбираем матрицу по краю рамки;
2. кладем модуль на подкладку (тут можно прихватить скотчем края модуля к подкладке, чтобы вода не попортила деталь);
3. сверху на дисплей кладется влажная салфетка, желательно по размеру матовой пленки;
4. салфетка аккуратно пропитываются малым количеством воды градусов около 25;
5. выжидаем около 2 — 3 часов, все зависит от качества нанесения покрытия. (клей у матовых пленок чувствителен к воде);
6. аккуратно поддеваем край и медленно, без рывков, снимаем матовый слой;
7. проверяем.
Если Вы захотите собрать очки на 2К дисплее, то я дам Вам ссылку:
За эту цену на али можно купить готовое устройство с FullHD -> готовое устройство
Поэтому я не стал тратить деньги на концепт и решил для пробы пользоваться тем, что есть.
Ардуино и гироскоп:
Самая важная часть получения эффекта присутствия в игре, приложении или видео — это возможность управлять головой, а значит будем писать трекинг головы.
Выдержка из официального источника для Arduino Leonardo:
В отличие от всех предыдущих плат ATmega32u4 имеет встроенную поддержку для USB соединения, это позволяет задать как Leonardo будет виден при подключение к компьютеру, это может быть клавиатура, мышь, виртуальный серийный / COM порт.
Именно это мне и надо.
Гироскоп был выбран самый простой и распространенный — GY521, на борту имеет акселерометр:
1. Accelerometer ranges: ±2, ±4, ±8, ±16g
2. Gyroscope ranges: ± 250, 500, 1000, 2000 °/s
3. Voltage range: 3.3V — 5V (the module include a low drop-out voltage regulator)
Исходя из скетча можно сделать вывод, что трекинг головы это по сути гиро-мышь.
КОНЦЕПТ
Все свелось к разделению на этапы:
1. примерка трекинга головы;
2. написание прошивки трекера;
3. заказ необходимого контроллера для дисплея;
4. настройка и запуск дисплея с контроллером;
5. примерка и общая сборка.
Так выглядела отладка трекера головы с гироскопом:
Видео работы трекера головы:
Запуск дисплея с контроллером:
Для запуска дисплея мне потребуется программа Tridef 3D, которая позволяет запускать игры и приложения с изображением Side by Side, ею я и воспользовался в качестве теста.
Причина использования вполне ясна, данные очки не будут опознаваться как очки Oculus DK1/DK2 и для того, что бы устройство опознавалось как VR очки хотя бы первых ревизий окулуса, надо менять полностью программное обеспечение контроллера дисплея, что пока я себе позволить не могу, так же потребуется либо частичное протипирование, либо создавать снова концепт платы на базе уже вот таких гироскопов, которые применяются в окулусах — гиро-модуль
Но в связи с тем, что я решил много не тратить на этот проект и зарабатывать на нем я тоже не собираюсь, это мы оставим для других людей. (Я знаю кто на основе подобных очков для смартов изготавливает наборы с прошивкой окулуса, но не буду рекламировать их, пост не о них)
Корпус
Наигравшись со стандартным корпусом, я решил примерить матрицу к нему и очень сильно разочаровался, матрица оказалась слишком большая для фокусного расстояния, я все видел но не видел картинки целиком, она не складывалась в единую.
Началось собирание корпуса с нуля.
Отломав все выступающие части, а так же крепление ремня для головы получил такой набор:
Собственно как и многие прототипы я выбрал гофрированный картон, как самый гибкий, легко доступный материал:
Тестирование
В процессе тестирования очки показали себя крайне хорошо, на разрешении 720р играть одно удовольствие. Гироскоп отлично работает и отрабатывает движения головы, мышь не плывет по координатам, кабеля я пропускал через голову позади себя, 3 метров хватило с лихвой.
Нюанс:
Очки довольно сильно выпирают, хоть масса не очень большая крутить головой надо привыкать.
Недостатки такой системы:
1.Надо меньше матрицу размером, что бы уменьшить длинну корпуса.
2.Нужны качественные линзы (для своих я брал с луп в ближайшей роспечати).
В целом для себя, как нетребовательного человека пойдет.
Как наиграюсь с этим всем буду делать из этой матрицы и контроллера проектор 8D. (Следите за обзорами)
Спасибо за внимание, терпение с удовольствием отвечу на ваши комментарии.
Беспощадный, самодельный VR
Планирую купить+29Добавить в избранноеОбзор понравился+85
+149
Совместимость с играми, тот же скайрим не стартует в 1024x600, а так же например BF3. 1024x600 с этим разрешением есть определенные проблемы в Win, не самое популярное.
Ну вообще то правильный режим работы такого контроллера — это подача на него 1920*1080, а потом его скалер отмасштабирует в 1024*600. Компьютеру в принципе и ненужно знать о таком — за это отвечает именно скалер. И, конечно же, такой четкости как при входном сигнале 1024*600 не получится, но отображается Full HD вполне сносно.
Надо через USB версию Splashtop. Задержек почти нет вроде. Использую в машине планшет в качестве дисплея для CarPC. Вроде картинку выводит без задержек по USB. Есть еще подобная программа TwomonUSB, но Splashtop нравится больше
Для полноценного VR-а здесь, как я понял, не хватает еще одной степени свободы головы (вращение вокруг оси взгляда наклонами головы). И эмуляцией мыши это похоже не решить. Я особо не вникал в эту тему, может уже есть какие-нибудь открытые VR спецификации для сопряжения самодельных очков и контроллеров и полноценных VR игр?
Нет таких спецификаций нет, все базируется на прошивке Okulus dk1, на ее базе клепают такие очки. Да одной свободы нет, но это не сильно ощущается. Эффект вау в том же самом BF3 обеспечивает с лихвой, по новому воспринимаются старые игры, скайрим тоже очень хорош.
Ну это только для всяких следующих проектов, сейчас уж я не буду ничего менять, скажем так удовлетворился результатом и определенным, полученным опытом. Пока вопросы очков больше меня не беспокоят. В любом случае вывод один, ждать когда это все станет более массовым и брать готовы продукт. Ради интереса, фана или просто ради того что бы опыт получить можно, на повседневку не думаю.
купил себе bobo vr z4 + телефон le max 2 с 2к экраном. подключил через trinus vr. запустил скайрим через vireo perception. все работает, только качество графики на уровне дума 2. смотрю на мониторе — вроде прилично. на телефоне через wifi приходит уже что-то совсем печальное. это сжатие из-за беспроводного соединения? как вы конвертировали игры в 3д?
Да для получения быстрого отклика качество картинки пережимается, я играл без сжатия но блин отлик был просто ужасный. С сжатием норм но графика совсем дерьмовая получалась. По этому у меня и вылилось все это в полноценный монитор. В любом случае лучше и стабильнее всего получилось запускать именно через Splashtop и обязательно через кабель usb.
А вот вопрос. На видео демонстрации работы гироскопа по экрану гуляет туда-сюда указатель мышки. Т.е. в играх очки будут управлять мышкой-обзором-прицелом. Как же целиться в BF3, головой?
Пара вопросов:
1. Что за «матовая пленка»? Я так подозреваю, что это не просто пленка, а поляризатор. Я отродясь не слыхивал, чтобы в такой дешманской матрице как Netron была бы какая то «матовая пленка»… Ха!!! Догнал… Это транспортировочная что ли? Так она в любом случае должна убираться…
2. Прошивок на контроллер PCB800168 существует всего 9 штук, и только одна на 1024*600 TTL. Интересно узнать, что вы там «перебрали не один десяток»? Прошивки на RTD2660H вообще? Это как минимум пустое занятие. Или именно на эту плату? Тогда я уже сказал, сколько на нее существует прошивок. А вообще — мой вам совет: прошивку (поскольку она всего одна подходящая) надо переделать — заново собрать EDID (чтобы компьютер «знал» про разрешение 1024*600). Как — вэлкам на pccar, найдете там мою тему про EDID и сделайте. Это несложно. Но зато у вас будет честный натив, а не абы что…
В мониторах — однозначно поляризатор! Не вздумайте сдирать!
Пленку можно купить и отдельно с последующей наклейкой (после того, как осознаете, что вы натворили), но она уже не будет того качества, как ее сделали на заводе AUO, CPT, Hannstar, Innolux, LG и т.д. И после этого ваш монитор будет по углам обзора сильно смахивать на самый дешевый ноут…
Что же если вы считаете меня настолько дураком, не сведущим в транспортировочных плёнках это ваше дело. Пленка именно что матовая, если бы я отодрал поляризатор, то изо можно было бы видеть если только поляризационные пленку вставить в глаза себе, ТК показывал бы он белый фон. Дисплей отображает изначальный нетив в в 1024*600, а эдид как вы сказали править не обязательно о причине вам все на тот же сайт, который вы указали сами.
Последнее предложение вообще не понял, особенно в конце… Но насчет натива — да. Глянул сейчас прошиву — китайцы все почистили перед выпуском в свет: . Молодцы, значит с едидом проще оказалось. Да и кстати, я ошибся — не ваше это было сообщение…
Насчет матовой пленки — специально расковыряю нетроновскую матрицу, посмотрю. У других такого не встречал. В мониторах — нет, в бучных — тоже, в других планшетных матрицах — тоже не видел. Хотя, в планшетах матовые и редко попадаются.
И все же, мне очень интересно (я вполне серьезно) — я знаю под эту матрицу для этого контроллера только одну прошивку, а вы — десятки. Расскажите — может я что то упустил…
Ну и мое предложение насчет матрицы с контроллером — в силе.
У меня коллега несколько лет назад делал шлем под FPV для коптера. Он взял велошлем в качестве основы «шапки», потом взял матрицу+ контроллер, пластиковую сдвоенную линзу взял от козырька
Применил два зеркала, чтобы уменьшить вынос матрицы в перёд и расположил саму матрицу почти на макушке (можно было применить только одно зеркало, если в контроллере можно было включить зеркальное отображение по горизонтали). Потом уравновесил аккумулятором, питающим это всё. он выкладывал в теме на rcdesign.
Запускал Half-life 2, Portal
Не увидел в обзор, что за телефон у Вас?
Смотреть СНИЗУ — наверх.
Как по мне, толку с проектора будет больше.
Хотя и за очки, РЕСПЕКТ!
1. Что за «матовая пленка»? Я так подозреваю, что это не просто пленка, а поляризатор. Я отродясь не слыхивал, чтобы в такой дешманской матрице как Netron была бы какая то «матовая пленка»… Ха!!! Догнал… Это транспортировочная что ли? Так она в любом случае должна убираться…
2. Прошивок на контроллер PCB800168 существует всего 9 штук, и только одна на 1024*600 TTL. Интересно узнать, что вы там «перебрали не один десяток»? Прошивки на RTD2660H вообще? Это как минимум пустое занятие. Или именно на эту плату? Тогда я уже сказал, сколько на нее существует прошивок. А вообще — мой вам совет: прошивку (поскольку она всего одна подходящая) надо переделать — заново собрать EDID (чтобы компьютер «знал» про разрешение 1024*600). Как — вэлкам на pccar, найдете там мою тему про EDID и сделайте. Это несложно. Но зато у вас будет честный натив, а не абы что…
Пленку можно купить и отдельно с последующей наклейкой (после того, как осознаете, что вы натворили), но она уже не будет того качества, как ее сделали на заводе AUO, CPT, Hannstar, Innolux, LG и т.д. И после этого ваш монитор будет по углам обзора сильно смахивать на самый дешевый ноут…
Насчет матовой пленки — специально расковыряю нетроновскую матрицу, посмотрю. У других такого не встречал. В мониторах — нет, в бучных — тоже, в других планшетных матрицах — тоже не видел. Хотя, в планшетах матовые и редко попадаются.
И все же, мне очень интересно (я вполне серьезно) — я знаю под эту матрицу для этого контроллера только одну прошивку, а вы — десятки. Расскажите — может я что то упустил…
Ну и мое предложение насчет матрицы с контроллером — в силе.
Применил два зеркала, чтобы уменьшить вынос матрицы в перёд и расположил саму матрицу почти на макушке (можно было применить только одно зеркало, если в контроллере можно было включить зеркальное отображение по горизонтали). Потом уравновесил аккумулятором, питающим это всё. он выкладывал в теме на rcdesign.
Поискал, не нашёл фотку на всего этого добра (была на форуме rcdesign)