Interface IWebXRControllerPointerSelectionOptions
customLasterPointerMeshGenerator?: () => AbstractMesh;
customSelectionMeshGenerator?: () => Mesh;
customUtilityLayerScene?: Scene;
disablePointerUpOnTouchOut: boolean;
disableScenePointerVectorUpdate: boolean;
disableSwitchOnClick?: boolean;
enablePointerSelectionOnAllControllers?: boolean;
forceGazeMode: boolean;
forceGripIfAvailable?: boolean;
gazeCamera?: WebXRCamera;
gazeModePointerMovedFactor?: number;
lookAndPickMode?: boolean;
maxPointerDistance?: number;
overrideButtonId?: string;
preferredHandedness?: any;
renderingGroupId?: number;
timeToSelect?: number;
useUtilityLayer?: boolean;
xrInput: WebXRInput;
}
Index
Properties
Properties
Optionalcustom Laster Pointer Mesh Generator
A function that will be called when a new laser pointer mesh is generated. This function should return a mesh that will be used as the laser pointer mesh. The height (y) of the mesh must be 1.
Optionalcustom Selection Mesh Generator
A function that will be called when a new selection mesh is generated. This function should return a mesh that will be used as the selection mesh. The default is a torus with a 0.01 diameter and 0.0075 thickness .
Optionalcustom Utility Layer Scene
if provided, this scene will be used to render meshes.
disable Pointer Up On Touch Out
Disable the pointer up event when the xr controller in screen and gaze mode is disposed (meaning - when the user removed the finger from the screen) If not disabled, the last picked point will be used to execute a pointer up event If disabled, pointer up event will be triggered right after the pointer down event. Used in screen and gaze target ray mode only
disable Scene Pointer Vector Update
Should the scene pointerX and pointerY update be disabled This is required for fullscreen AR GUI, but might slow down other experiences. Disable in VR, if not needed. The first rig camera (left eye) will be used to calculate the projection
Optionaldisable Switch On Click
Disable switching the pointer selection from one controller to the other. If the preferred hand is set it will be fixed on this hand, and if not it will be fixed on the first controller added to the scene
Optionalenable Pointer Selection On All Controllers
Enable pointer selection on all controllers instead of switching between them
force Gaze Mode
For gaze mode for tracked-pointer / controllers (time to select instead of button press)
Optionalforce Grip If Available
Use the grip space instead of the pointer space for selection, if available.
Optionalgaze Camera
Optional WebXR camera to be used for gaze selection
Optionalgaze Mode Pointer Moved Factor
Factor to be applied to the pointer-moved function in the gaze mode. How sensitive should the gaze mode be when checking if the pointer moved to start a new countdown to the pointer down event. Defaults to 1.
Optional Experimentallook And Pick Mode
If set to true, the hand rays will be disabled and the user will be able to look and pick objects. This requires system support (like in the vision OS) and will not work in all systems.
- this is an experimental feature and might change int he future
Optionalmax Pointer Distance
The maximum distance of the pointer selection feature. Defaults to 100.
Optionaloverride Button Id
Different button type to use instead of the main component
Optionalpreferred Handedness
The preferred hand to give the pointer selection to. This will be prioritized when the controller initialize. If switch is enabled, it will still allow the user to switch between the different controllers
Optionalrendering Group Id
use this rendering group id for the meshes (optional)
Optionaltime To Select
The amount of time in milliseconds it takes between pick found something to a pointer down event. Used in gaze modes. Tracked pointer uses the trigger, screen uses touch events 3000 means 3 seconds between pointing at something and selecting it
Optionaluse Utility Layer
Should meshes created here be added to a utility layer or the main scene
xr Input
the xr input to use with this pointer selection
Options interface for the pointer selection module