Device
EditDifferent types of input devices supported by the lovr.headset
module.
Value | Description |
head | The headset. |
floor | A device representing the floor, at the center of the play area. The pose of this device in physical space will remain constant, even after recentering. |
left | A shorthand for hand/left. |
right | A shorthand for hand/right. |
hand/left | The left hand. |
hand/right | The right hand. |
hand/left/grip | The left hand grip pose, used for held objects. |
hand/right/grip | The right hand grip pose, used for held objects. |
hand/left/point | The left hand pointer pose, used for pointing or aiming. |
hand/right/point | The right hand pointer pose, used for pointing or aiming. |
hand/left/pinch | The left hand pinch pose between the thumb and index fingers, used for precise, close-range interactions. |
hand/right/pinch | The right hand pinch pose between the thumb and index fingers, used for precise, close-range interactions. |
hand/left/poke | The left hand poke pose, on the tip of the index finger or in front of a controller. |
hand/right/poke | The right hand poke pose, on the tip of the index finger or in front of a controller. |
elbow/left | A device tracking the left elbow. |
elbow/right | A device tracking the right elbow. |
shoulder/left | A device tracking the left shoulder. |
shoulder/right | A device tracking the right shoulder. |
chest | A device tracking the chest. |
waist | A device tracking the waist. |
knee/left | A device tracking the left knee. |
knee/right | A device tracking the right knee. |
foot/left | A device tracking the left foot or ankle. |
foot/right | A device tracking the right foot or ankle. |
camera | A camera device, often used for recording "mixed reality" footage. |
keyboard | A tracked keyboard. |
eye/left | The left eye. |
eye/right | The right eye. |
eye/gaze | The combined eye gaze pose. The position is between the eyes. The orientation aligns the -Z axis in the direction the user is looking and the +Y axis to the head's "up" vector. This provides more accurate eye tracking information compared to using the individual eye devices. |
Notes
The grip
pose is used to render an object held in the user's hand. It's positioned at the surface of the palm. The X axis of the grip orientation is perpendicular to the palm, pointing away from the left palm or into the right palm. If you imagine the hand holding a stick, the Z axis will be parallel to the stick.
Image from the OpenXR Specification
The point
pose is used to aim or point at objects. It's usually positioned slightly in front of the hand or controller, and is oriented so the -Z axis points in a natural forward direction.
Image from the OpenXR Specification
The pinch
pose is a stable point between the thumb and index finger on a hand, or a point slightly in front of a controller. The -Z axis will point forward, away from the hand. It's good for precise, close-range interaction.
Image from the OpenXR Specification
The poke
pose is a position located at the tip of the index finger, or a point slightly in front of a controller. The -Z axis will point forward out of the tip of the finger, the +Y axis will be perpendicular to the fingernail.
Image from the OpenXR Specification
These "hand pose devices" do not report any button input with e.g. lovr.headset.isDown
. The main hand/left
and hand/right
devices should be used for buttons and haptics.
See also
DeviceAxis
DeviceButton
lovr.headset.getPose
lovr.headset.getPosition
lovr.headset.getOrientation
lovr.headset.getVelocity
lovr.headset.getAngularVelocity
lovr.headset.getSkeleton
lovr.headset.isTracked
lovr.headset.isDown
lovr.headset.isTouched
lovr.headset.wasPressed
lovr.headset.wasReleased
lovr.headset.getAxis
lovr.headset.vibrate
lovr.headset.animate
lovr.headset