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);