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 }
Propiedad | Tipo | Descripción |
---|---|---|
escena | Scene | La escena de los tres.js. |
cámara | Camera | La cámara principal three.js. |
renderizador | Renderer | El renderizador de three.js. |
cameraTexture [Opcional] | Texture | Una 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:
Propiedad | Tipo | Descripción |
---|---|---|
escena | Scene | La 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ámara | Camera | La 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)