Saltar al contenido principal

onStart()

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

Descripción

onStart() se llama cuando se inicia XR.

Parámetros

ParámetroDescripción
canvasEl lienzo que respalda el procesamiento de la GPU y la visualización del usuario.
GLctxEl lienzo de dibujo WebGLRenderingContext o WebGL2RenderingContext.
computeCtxEl lienzo de cálculo WebGLRenderingContext o WebGL2RenderingContext.
isWebgl2Verdadero si GLctx es un WebGL2RenderingContext.
orientationLa rotación de la IU 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 él aquí ahora es porque 'mycamerapipelinemodule' se instaló 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,
})
},
})