Если стратегия высшего уровня прояснялась, то тактика опорных уровней была пока туманной. Попробовать начать собственный проект? Упросить университет или крупную корпорацию пустить нас в свою лабораторию виртуальной реальности? Просто заработать достаточно денег на играх или на чем-то еще и действовать, не оглядываясь на существующие прецеденты?
Всех нас интересовал статус нашего проекта, но никто не знал ответа на этот вопрос. Возможно, сплав левых и капиталистических идеалов?
Технологическая компания, созданная на основе консенсуса? А не сумасшедший ли это план? (Джарон из 2017 года перебивает громким криком: «Да, да, абсолютно сумасшедший!») Но в то время всё казалось возможным, все были идеалистами, причем достаточно молодыми, чтобы проводить бессонные ночи над отладкой свежей демонстрационной версии.
В 1983 году создание проектов виртуальной реальности захватило нас еще сильнее.
Ясно было одно: у нас не получится сделать всё. Я всеми силами сопротивлялся этой мысли, но все же признал, что полноценное фенотропное зрительное восприятие – это проект, рассчитанный на несколько поколений, а не на несколько лет. Однако мы могли успеть создать виртуальную реальность к тому моменту, когда появятся 3D-компьютеры, работающие в режиме реального времени.
Дэвид в Массачусетском технологическом экспериментировал с языком визуального программирования под названием dataflow. Я поговорил с Чаком и остальной командой, и мы решили выпустить промежуточный продукт, который будет включать в себя разработанные нами характеристики, например архитектуру пошагового компилятора, и понятную парадигму dataflow для программного обеспечения виртуальной реальности. Мы сочли, что эти решения определенно будут комбинироваться друг с другом
[67]. Дэйв как раз получил степень и приехал поработать с нами. (Современным художникам, возможно, знаком инструмент разработки MAX, использующий dataflow.) Чак назвал нашу новую программу контроля виртуальной реальности Body Electric.
Нам нужна была еще программа 3D-проектирования, но тогда невозможно было взять и купить ее. Янг занялся этой проблемой и начал проект, который в конце концов превратился в Swivel 3D.
Мы также очень долго отслеживали другую проблему, которой будет посвящена следующая глава.
Глава 13
Шесть степеней (немного о сенсорах и данных виртуальной реальности)
Глаза должны блуждать
[68]
Когда Том сделал первые перчатки, они считывали информацию лишь о сгибании пальцев, а о положении руки в пространстве и ее наклоне – нет. (Для того чтобы описать расположение и ориентацию объекта в трехмерном пространстве, нужны шесть цифр: x, y, z, поворот, наклон, смена направления.)
Очевидно, что если мы хотели заставить руку аватара поднять виртуальный объект, то нам необходимо было знать, как расположена в пространстве и под каким углом наклонена рука человека. Устройства, которые считывают информацию о расположении объекта в пространстве, обычно называют трекерами.
Подходящие для отслеживания движений человека трекеры уже были в продаже, хотя цены на них и кусались. Как ни странно, лидировал по производству подобных устройств штат Вермонт. Там располагались сразу четыре такие компании с единым представительством в Вермонт Вэлли. Их клиенты оснащали трекерами роботов, промышленное оборудование и даже авиасимуляторы.
В те годы к внешнему устройству всегда прилагалась базовая станция, служившая для трекеров точкой привязки. Например, две основные компании из Вермонта по производству трекеров (Polhemus и Ascension) специализировались на отслеживании с использованием магнитных полей. Во внушительных размеров корпусе располагался большой электромагнит, испускавший пульсирующее поле, а маленькие сенсоры магнитного поля встраивались в перчатку, а позже в шлем.
Существовало множество других потенциальных способов отслеживания: лазеры, радиоволны и многое другое. Мы долгое время разрабатывали смелые алгоритмы отслеживания.
Вы спросите, зачем встраивать трекер в шлем? Помните шпионскую подводную лодку? Она должна исследовать.
Вспомним фундаментальный принцип зрительного восприятия в виртуальной реальности, который упоминался в главе «Что показывает зеркало»: «Для отработки визуального аспекта в VR нужно просчитать, что должны видеть ваши глаза в виртуальном мире, когда вы смотрите по сторонам. Ваш взгляд блуждает, и компьютер виртуальной реальности должен постоянно и очень быстро рассчитывать, какая панорама перед вами открылась бы, если бы виртуальный мир был реальностью. Когда вы оборачиваетесь и смотрите вправо, виртуальный мир в качестве компенсации должен повернуться налево, создавая иллюзию, что мир статичен и не зависит от вас».
Я должен четко изложить наиважнейший момент: само по себе качество визуального отображения – далеко не самая главная составляющая визуальных ощущений в виртуальной реальности. Намного важнее отслеживание
[69] – то, насколько быстро и хорошо визуальное отображение реагирует на движения головы или глаз.
Мозг интегрируется
Всеобщая проблема чувственного восприятия заключается в том, что это довольно длительный процесс. Если вы станете профессионалом мира виртуальной реальности, вас попросят использовать для обозначения задержек в VR-системах термин «запаздывание».
Первостепенная значимость запаздывания наглядно проявилась в начале 1980-х годов. При научно-исследовательском центре НАСА открылась лаборатория виртуальной реальности, которой руководили сначала Майк МакГриви, а затем Скотт Фишер.
Майк поставил эксперимент. Он сконструировал шлем виртуальной реальности с черно-белым изображением, имевшим разрешение 100 × 100 пикселей на каждый глаз. Это было самое высокое возможное разрешение с учетом визуальных технологий того времени. Основная обработка осуществлялась в формате векторной графики; камера фиксировала векторные изображения, управляя дисплеем с пиксельной структурой. В то время само использование пикселей для шлема было в новинку. Это, возможно, был первый пример, не считая летных симуляторов.