Ir al contenido principal

XR8.Threejs.xrScene()

XR8.Threejs.xrScene()

Descripción

Obtiene un manejador a la escena xr, cámara, renderizador, (opcional) textura de alimentación de cámara, y (opcional) layerScenes.

Parámetros

Ninguno

Devuelve

Un objeto: { scene, camera, renderer, cameraTexture, layerScenes }

PropiedadTipoDescripción
escenaSceneLa escena de los tres.js.
cámaraCameraLa cámara principal three.js.
renderizadorRendererEl renderizador de three.js.
cameraTexture [Opcional]TextureUna textura three.js con la imagen de la cámara recortada al tamaño del lienzo. Habilitado llamando a XR8.Threejs.configure({renderCameraTexture: true}).
layerScenes [Opcional]Registro<String, LayerScene>Un mapa de nombres de capas a escenas de capas de three.js. Contendrá los registros que se habiliten llamando a XR8.Threejs.configure({layerScenes: ['sky']}).

La LayerScene del objeto layerScenes tiene las siguientes propiedades:

PropiedadTipoDescripción
escenaSceneLa escena three.js para esta capa. El contenido añadido a este cielo sólo será visible cuando se encuentre en un área de la alimentación de la cámara en la que se haya detectado esta capa. Por ejemplo, en Efectos de cielo un cubo sólo se mostrará en el cielo. Usa XR8.LayersController.configure({layers: {sky: {invertLayerMask: true}}}) para invertir esto y hacer que el cubo sólo se muestre cuando no esté en el cielo.
cámaraCameraLa cámara three.js para esta capa. Tendrá su posición y rotación sincronizadas con la cámara principal.

Ejemplo

const {escena, cámara, renderizador, cámaraTextura} = XR8.Threejs.xrScene()

Ejemplo - Escena del cielo

XR8.LayersController.configure({layers: {sky: {}}})
XR8.Threejs.configure({layerScenes: ['sky']})
...
const {layerScenes} = XR8.Threejs.xrScene()
createSkyScene(layerScenes.sky.scene, layerScenes.sky.camera)