Возможности CMS в будущем пространственных вычислений

Опубликовано: 2019-10-24

В моей роли в WP Engine у ​​меня есть возможность путешествовать по миру, выступая в качестве представителя новых и интересных способов использования WordPress. Недавно я был в Роли, Северная Каролина, на All Things Open, где рассказывал о возможностях CMS в будущем пространственных вычислений. Это была важная тема для 45-минутного разговора, поэтому я решил поделиться более подробным взглядом на новый способ создания расширенной реальности (XR) с WordPress с использованием безголового подхода.

Безголовое увлечение

Я думаю, что многие из нас рассматривают безголовые в первую очередь как способ сделать наши сайты быстрее и отделить их от CMS, которая контролирует наш контент. Хотя в некоторых случаях это верно, это, вероятно, не самая убедительная точка зрения для рассмотрения этой концепции, когда мы рассматриваем, что это означает для нативных приложений и дополненной, виртуальной и смешанной реальности, в более широком смысле определяемой как расширенная реальность.

Чтобы понять, как WordPress может улучшить опыт XR, мы должны сделать шаг назад и понять, какие ключевые функции разработчики и дизайнеры хотят видеть в интерактивных приложениях.

В чем основная привлекательность CMS?

Уменьшив масштаб и взглянув на то, что представляет собой CMS по своей сути, можно выделить несколько ключевых функций, которые заставляют мое воображение, устремленное в будущее, биться быстрее. В широком смысле CMS можно определить как:

  • данные поста/страницы
  • мета, связанные с такими данными, как пользователи и сообщения
  • безопасная пользовательская система
  • редактор богатого контента
  • расширяемость через плагины/темы/и т.д.

WordPress ярко сияет во всем этом спектре, и, сочетая его с гибкостью открытого исходного кода, вы можете создавать все, о чем мечтаете. Пользовательские системы и контент являются ключевыми требованиями в интерактивных и мультимедийных приложениях, таких как XR. Решение с открытым исходным кодом, такое как WordPress, дает разработчикам большую свободу и больший контроль над исходным кодом и программным обеспечением, что означает, что они могут настроить его так, как им нужно, без ограничений по лицензии. Еще один уровень свободы был достигнут, когда новый редактор Gutenberg был объединен с WordPress 5.0, что еще больше демократизировало мощь самой популярной в мире CMS.

Возможности нового редактора WordPress

Мы потратили много времени на размышления о преимуществах внешнего интерфейса в унифицированном способе управления разметкой с помощью блоков. Я думаю, что одним из аспектов нового редактора WordPress, который в значительной степени упускают из виду при разработке внешнего интерфейса, является структура данных самих блоков.

Извлечение данных через REST API обычно возвращает окончательную разметку сообщения. Это затрудняет анализ или использование данных приложениями, не основанными на HTML. Конечно, вы можете очистить конечный результат, но это не дает уверенности в будущем и часто удаляет важный контекст.

Прежде чем сообщение отобразит разметку во внешнем интерфейсе, существуют ценные атрибуты, используемые для определения этой окончательной разметки. Эти параметры часто так же полезны для небраузерного приложения, как и для работы в браузере; просто нужно убедиться, что содержимое адаптировано для ваших целей.

Давайте представим, что у нас есть аудиоблок с атрибутами src , loop , autoplay и т. д. Эти атрибуты так же важны для небраузерного приложения, которое ожидает, что те же решения будут приняты во время выполнения. Запрашивая пост Гутенберга, можно получить аудиофайл, а также атрибуты того, как он должен себя вести, что приводит к унификации поведения приложения с поведением браузера.

В недалеком будущем физический и цифровой миры продолжат сливаться воедино. Поскольку молодое поколение все чаще взаимодействует не через экраны, клавиатуры и мыши, а через экраны, клавиатуры и мыши, нам, вероятно, следует начать создавать контент с учетом этого будущего. Мы действительно хотим, чтобы вся эта разметка была сохранена? Это даже важно? Если это так, возможно, этот атрибут следует сохранить, ввести ключ и открыть через JSON. Разметка действительно полезна только для внешнего рендеринга.

Концепция чтения блогов дополненной реальности только со звуком

Bose предлагает интересный подход к дополненной реальности. Они быстро обновили свои предложения продуктов, включив в свои наушники и солнцезащитные очки датчики с 6 степенями свободы (6DoF), чтобы обеспечить возможности дополненной реальности только со звуком. Это дает нам три важных механизма для XR; Отслеживание головы с 6 степенями свободы, индивидуальный звук и распознавание жестов. Я решил использовать эту технологию, чтобы проиллюстрировать потенциал структуры данных блоков Гутенберга.

фото солнцезащитных очков Bose AR

Используя плагин Gutenberg Object с открытым исходным кодом, созданный Роем Сиваном и его участниками, я смог предоставить данные атрибутов удобным для REST способом. Затем я смог переключить свое внимание на создание механики и приложение MVP, чтобы читать блог не глядя. Приложение размещает кнопки в трехмерном пространстве вокруг посетителя. Справа кнопка «Следующая запись». Прямо перед ними кнопка тела сообщения, которая воспроизводит чтение данных сообщения. Технология преобразования голоса в текст стала возможной благодаря плагину Amazon AI для WordPress.

При двойном нажатии на оправу очков, когда он смотрит на пост, голос предлагает посетителю использовать жест кивка для воспроизведения звука поста. В течение 24 часов после наброска идеи у меня было рабочее доказательство концепции, и я объясняю это в основном тем, что мне не нужно было выяснять, как подготовить мои данные. Блоки и JSON сделали все за меня!

Следующее изображение представляет собой набросок концепции вместе с конечным продуктом.

эскиз программы для чтения блога Bose AR.
окончательный дизайн прототипа программы для чтения блогов Bose AR.

Блоки в традиционной дополненной реальности

Пространственные блоки были мне интересны, поэтому я создал еще одно доказательство концепции, демонстрирующее, как сборные 3D-объекты в игровом движке могут быть связаны с 2D-блоками на веб-странице. Ниже приведен скриншот поста Гутенберга, сделанный вокруг моего гостиничного номера.

Пример, показывающий связь веб-сайта и опыта дополненной реальности.

Хотя буквальное представление веб-страницы 1:1 в AR показывает, что мы можем объединять наши дизайнерские решения в браузере и вне его, я думаю, что мы можем пойти еще дальше. Блок может представлять множество вещей; так почему бы не использовать пользовательские блоки для абстрагирования 3D-идей?

Нестандартные типы файлов и абстрагирование 3D-объектов

HTML имеет конечный список типов файлов, разрешенных по умолчанию. Это не значит, что мы ограничены только этими вариантами. WordPress достаточно гибок, чтобы расширяться до других, просто добавляя разрешенные типы.

Я разрабатываю музыкальную игру Broken Place, которая позволяет игрокам взаимодействовать с музыкой в ​​реальном времени в дополненной реальности. Звуковой движок работает на языке программирования с открытым исходным кодом под названием Pure Data (PD), который имеет очень специфический тип файла, который может читать только он. В WordPress я управляю содержимым сообщений в пользовательском типе сообщений, называемом «песни», куда игроки могут загружать свои патчи PD. Игроки просто входят на веб-сайт в качестве пользователя-участника и загружают свой патч. Сообщение о песне запрашивается из собственного приложения, и патч загружается.

Синтезатор дополненной реальности на пляже

Параметры отправки контента позволяют пользователям создавать свои собственные макеты для музыкальных интерфейсов. Представьте на рисунке ниже, что каждая из изображенных 3D-ручек была связана с блоком Гутенберга под названием «Ручка», и каждая из этих ручек имеет атрибут, связанный со звуковым сообщением, отправляемым звуковому движку. Создатели контента могут определить, как звуковые сообщения отображаются в сетке, используя блок столбцов. Когда вы вкладываете блоки в блок столбцов, ответ REST также вкладывает объекты как дочерние элементы блока, и логика может применяться с использованием структуры JSON.

Интерфейс синтезатора в VR

Потенциал нарративного дизайна

В почтовых данных мы рассказываем истории; некоторые информационные, некоторые личные, но они служат мыслекапсулами. Я мечтаю о будущем, в котором сообщения будут намного больше, чем просто текст и изображения на экране. Пространственное содержание предоставляет удивительные возможности для повествовательного дизайна. Я видел этот потенциал, представленный в историях AMP, и надеюсь, что эта структура поможет вдохновить истории, рассказываемые в трехмерных физических пространствах.

изображение блока AMP Stories

Представьте себе ту же структуру постов AMP-историй, но для 3D-пространств, которые вы можете разместить у себя дома или в офисе. Mozilla Hubs лидирует в пространстве для совместной работы XR, открытом для всех устройств, и я вижу интересный потенциал в объединении повествовательного дизайна WordPress для Mozilla Hubs, позволяющего делиться опытом повествования.

Я рад продолжить изучение новых способов использования безголового WordPress для расширения возможностей XR и помочь открыть совершенно новую эру в том, как мы взаимодействуем с цифровым контентом и создаем его.