Ir al contenido principal

onStart()

onStart: ({ canvas, GLctx, computeCtx, isWebgl2, orientation, videoWidth, videoHeight, canvasWidth, canvasHeight, config })

Descripción

Se llama a onStart() cuando se inicia XR.

Parámetros

ParámetroDescripción
lonaEl lienzo que respalda el procesamiento de la GPU y la visualización del usuario.
GLctxEl WebGLRenderingContext o WebGL2RenderingContext del lienzo.
computeCtxEl WebGLRenderingContext o WebGL2RenderingContext del lienzo de cálculo.
isWebgl2True si GLctx es un WebGL2RenderingContext.
orientaciónLa rotación de la interfaz de usuario con respecto a la vertical, en grados (-90, 0, 90, 180).
videoWidthLa altura de la alimentación de la cámara, en píxeles.
videoHeightLa altura de la alimentación de la cámara, en píxeles.
canvasWidthLa anchura del lienzo GLctx, en píxeles.
canvasHeightLa altura del lienzo GLctx, en píxeles.
configLos parámetros de configuración que se pasaron a XR8.run().

Ejemplo

XR8.addCameraPipelineModule({
name: 'mycamerapipelinemodule',
onStart: ({canvasWidth, canvasHeight}) => {
// Obtén la escena three.js. Esto fue creado por XR8.Threejs.pipelineModule().onStart(). La
// razón por la que podemos acceder a ella ahora es porque 'mycamerapipelinemodule' fue instalado después de
// XR8.Threejs.pipelineModule().
const {scene, camera} = XR8.Threejs.xrScene()

// Añade algunos objetos a la escena y fija la posición inicial de la cámara.
myInitXrScene({scene, camera})

// Sincroniza la posición 6DoF del controlador xr y los parámetros de la cámara con nuestra escena.
XR8.XrController.updateCameraProjectionMatrix({
origin: camera.position,
facing: camera.quaternion,
})
},
})