Saltar al contenido principal

XRInput

La clase XRInput proporciona métodos para capturar y gestionar la entrada XR (Realidad Extendida) desde dispositivos como controladores de VR.

start()

Inicializa el sistema de entrada XR y comienza a escuchar eventos de entrada relacionados.

Ejemplo:

    Input.xr.start();

stop()

Detiene el sistema de entrada XR y elimina todos los event listeners relacionados.

Ejemplo:

    Input.xr.stop();

count(): number

Devuelve el número de fuentes de entrada XR activas que están siendo rastreadas actualmente.

Ejemplo:

    const numControllers = Input.xr.count();
console.log(numControllers);

controller(index: number): THREE.Group | null

Devuelve un Group que representa el espacio del rayo objetivo del controlador XR.

Ejemplo:

    const leftController = Input.xr.controller(0);

controllerGrip(index: number): THREE.Group | null

Devuelve un Group que representa el espacio de agarre del controlador XR.

Ejemplo:

    const grip = Input.xr.controllerGrip(0);

axes(index: number): number[]

Devuelve un array que representa los ejes presentes en el dispositivo XR (por ejemplo, joysticks analógicos).

Ejemplo:

    const axesValues = Input.xr.axes(0);

isButtonPressed(index: number, buttonIndex: number): boolean

Verifica si un botón específico del controlador XR está siendo presionado actualmente.

Ejemplo:

    if (Input.xr.isButtonPressed(0, 1)) {
console.log('Botón presionado');
}

isButtonReleased(index: number, buttonIndex: number): boolean

Devuelve true solo una vez si el botón fue presionado previamente y luego liberado.

Ejemplo:

    if (Input.xr.isButtonReleased(0, 1)) {
console.log('Botón liberado');
}

isButtonPressedFor(index: number, buttonIndex: number, durationInSeconds: number): boolean

Verifica si un botón específico ha sido presionado durante una duración determinada.

Ejemplo:

    if (Input.xr.isButtonPressedFor(0, 1, 2)) {
console.log('Botón presionado por 2 segundos');
}

position(index?: number): THREE.Vector3 | null

Devuelve la posición del controlador XR en el espacio 3D.

Ejemplo:

    const pos = Input.xr.position(0);

orientation(index?: number): THREE.Quaternion | null

Devuelve la rotación del controlador XR en el espacio 3D.

Ejemplo:

    const rot = Input.xr.orientation(0);

raycast(index?: number): RaycastOutput

Calcula el raycaster y la posición del cursor para los controladores XR.

Ejemplo:

    const ray = Input.xr.raycast(0);

handedness(index?: number): string

Devuelve la lateralidad del controlador XR (por ejemplo, 'left' o 'right').

Ejemplo:

    console.log(Input.xr.handedness(0));

haptics(index: number, value?: number, duration?: number): void

Aplica retroalimentación háptica al controlador XR.

Ejemplo:

    Input.xr.haptics(0, 1, 200);