@jaimebboyjt/tres-fps-controls
Version:
Easy to use First Person Controls for TresJS
35 lines (33 loc) • 1.13 kB
TypeScript
import { Camera, Euler, EventDispatcher, Vector3 } from 'three';
declare class PointerLockControls extends EventDispatcher {
domElement: HTMLElement;
camera: Camera;
isLocked: boolean;
minPolarAngle: number;
maxPolarAngle: number;
vector: Vector3;
euler: Euler;
previousTouch?: Touch;
onMouseMoveBind: (event: MouseEvent) => void;
onPointerlockChangeBind: () => void;
onPointerlockErrorBind: () => void;
onTouchMoveBind: (e: TouchEvent) => void;
onTouchEndBind: () => void;
constructor(camera: Camera, domElement: HTMLElement);
onTouchMove(e: TouchEvent): void;
onTouchEnd(): void;
onMouseMove(event: MouseEvent): void;
updatePosition(movementX: number, movementY: number, multiplier: number): void;
onPointerlockChange(): void;
onPointerlockError(): void;
connect(): void;
disconnect(): void;
dispose(): void;
getObject(): Camera;
getDirection(): (v: Vector3) => Vector3;
moveForward(distance: number): void;
moveRight(distance: number): void;
lock(): void;
unlock(): void;
}
export { PointerLockControls };