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],
});
}
Спецификации
Совместимость с браузерами
| Рабочий стол | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
createEquirectLayer |
Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
См. также
© 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