Spec-Zone.ru › Web APIs

XRWebGLSubImage: свойство imageIndex

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

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

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

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

Только для чтения imageIndex свойство интерфейса XRWebGLSubImage — это число, представляющее смещение в массив текстур, если слой был запрошен с texture-array; в противном случае — null.

Значение

Число или null, если слой не был запрошен с texture-array.

Использование imageIndex

Свойство imageIndex может быть передано WebGL2RenderingContext.framebufferTextureLayer() для привязки текстур глубины и цвета к буферу фреймов с правильным индексом слоя.

const xrGlBinding = new XRWebGLBinding(xrSession, gl);
const layer = xrGlBinding.createProjectionLayer({
  textureType: "texture-array",
});
const framebuffer = gl.createFramebuffer();

xrSession.updateRenderState({ layers: [layer] });
xrSession.requestAnimationFrame(onXRFrame);

function onXRFrame(time, xrFrame) {
  xrSession.requestAnimationFrame(onXRFrame);

  gl.bindFramebuffer(gl.FRAMEBUFFER, framebuffer);
  const viewport = xrGlBinding.getSubImage(layer, xrFrame).viewport;
  gl.viewport(viewport.x, viewport.y, viewport.width, viewport.height);

  for (const view in xrViewerPose.views) {
    const subImage = xrGlBinding.getViewSubImage(layer, view);
    gl.framebufferTextureLayer(
      gl.FRAMEBUFFER,
      gl.COLOR_ATTACHMENT0,
      subImage.colorTexture,
      0,
      subImage.imageIndex,
    );
    gl.framebufferTextureLayer(
      gl.FRAMEBUFFER,
      gl.DEPTH_ATTACHMENT,
      subImage.depthStencilTexture,
      0,
      subImage.imageIndex,
    );

    // Render from the viewpoint of xrView
  }
}

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

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

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

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

См. также

  • WebGL2RenderingContext.framebufferTextureLayer()

© 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/XRWebGLSubImage/imageIndex

Spec-Zone.ru

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