1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- import type { IMinimalMotionControllerObject, MotionControllerHandedness } from "./webXRAbstractMotionController";
- import { WebXRAbstractMotionController } from "./webXRAbstractMotionController";
- import type { AbstractMesh } from "../../Meshes/abstractMesh";
- import type { Scene } from "../../scene";
- /**
- * The motion controller class for oculus touch (quest, rift).
- * This class supports legacy mapping as well the standard xr mapping
- */
- export declare class WebXROculusTouchMotionController extends WebXRAbstractMotionController {
- private _forceLegacyControllers;
- private _modelRootNode;
- /**
- * The base url used to load the left and right controller models
- */
- static MODEL_BASE_URL: string;
- /**
- * The name of the left controller model file
- */
- static MODEL_LEFT_FILENAME: string;
- /**
- * The name of the right controller model file
- */
- static MODEL_RIGHT_FILENAME: string;
- /**
- * Base Url for the Quest controller model.
- */
- static QUEST_MODEL_BASE_URL: string;
- profileId: string;
- constructor(scene: Scene, gamepadObject: IMinimalMotionControllerObject, handedness: MotionControllerHandedness, _legacyMapping?: boolean, _forceLegacyControllers?: boolean);
- protected _getFilenameAndPath(): {
- filename: string;
- path: string;
- };
- protected _getModelLoadingConstraints(): boolean;
- protected _processLoadedModel(_meshes: AbstractMesh[]): void;
- protected _setRootMesh(meshes: AbstractMesh[]): void;
- protected _updateModel(): void;
- /**
- * Is this the new type of oculus touch. At the moment both have the same profile and it is impossible to differentiate
- * between the touch and touch 2.
- * @returns true if this is the new type of oculus touch controllers.
- */
- private _isQuest;
- }
|