Spec-Zone.ru › Web APIs

XRMediaBinding: метод createEquirectLayer()

Ограниченная доступность

Эта функция не относится к базовым, поскольку она не работает в некоторых из наиболее широко используемых браузеров.

  • Узнать больше
  • Показать полную совместимость
  • Отправить отзыв

Экспериментальная функция: Это экспериментальная технология.
Перед использованием в производстве внимательно проверьте таблицу совместимости браузеров.

Метод createEquirectLayer() интерфейса XRMediaBinding возвращает объект XREquirectLayer, который представляет собой слой, отображающий данные, закодированные в прямоугольной проекции, на внутренней поверхности сферы.

Синтаксис

createEquirectLayer(video, options)

Параметры

video

Видеоэлемент HTMLVideoElement для отображения.

options

Объект для настройки XREquirectLayer. Объект может содержать следующие свойства, при этом space является обязательным:

centralHorizontalAngle Необязательно

Число, обозначающее центральный горизонтальный угол в радианах для сферы. Значение по умолчанию: 6.28318 (2π).

invertStereo Необязательно

Булево значение, указывающее, следует ли инвертировать естественное расположение каждого вида в видео. По умолчанию false.

layout Необязательно

Строка, указывающая макет видео. Возможные значения:

default

Слой вмещает все представления сессии.

mono

Присваивается и отображается один XRSubImage для обоих глаз.

stereo

Средство пользователя определяет, как распределяется XRSubImage (один или два) и макет (верх/низ или слева/справа). Рекомендуется использовать тип текстуры texture-array для макетов stereo.

stereo-left-right

Присваивается один XRSubImage. Левый глаз получает левую область текстуры, правый глаз — правую. Этот макет предназначен для минимизации вызовов отрисовки для контента, который уже находится в стерео (например, стерео видео или изображения).

stereo-top-bottom

Присваивается один XRSubImage. Левый глаз получает верхнюю область текстуры, правый глаз — нижнюю. Этот макет предназначен для минимизации вызовов отрисовки для контента, который уже находится в стерео (например, стерео видео или изображения). Значение по умолчанию — mono.

lowerVerticalAngle Необязательно

Число, обозначающее нижний вертикальный угол в радианах для сферы. Значение по умолчанию: -1.570795 (-π/2).

radius Необязательно

Число, обозначающее радиус сферы. Значение по умолчанию 0.0.

space Обязательно

Объект XRSpace, определяющий пространственные отношения слоя к физической среде пользователя.

transform Необязательно

Объект XRRigidTransform, определяющий смещение и ориентацию относительно space.

upperVerticalAngle Необязательно

Число, обозначающее верхний вертикальный угол в радианах для сферы. Значение по умолчанию: 1.570795 (π/2).

Возвращаемое значение

Объект XREquirectLayer.

Примеры

Создание слоя XREquirectLayer для отображения видео

Создайте XRMediaBinding и используйте HTMLVideoElement, который передается в createEquirectLayer(). Настройте слой с помощью указанных выше параметров и отобразите слой на устройстве XR, добавив его в состояние отрисовки layers в XRSession.updateRenderState().

function onXRSessionStarted(xrSession) {
  const xrMediaBinding = new XRMediaBinding(xrSession);
  const video = document.createElement("video");
  video.src = "just-fascination.mp4";

  const videoLayer = xrMediaBinding.createEquirectLayer(video, {
    space: xrReferenceSpace,
  });

  xrSession.updateRenderState({
    layers: [videoLayer],
  });
}

Спецификации

Спецификация
API уровней WebXR Layers 1
# dom-xrmediabinding-createequirectlayer

Совместимость с браузерами

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
createEquirectLayer Нет Нет Нет Нет Нет Нет Нет Нет Нет Нет Нет

См. также

  • XREquirectLayer

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/XRMediaBinding/createEquirectLayer

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API