Draft This page is not complete.
The emulatedPosition
read-only attribute of the XRPose
interface is a Boolean value indicating whether or not both the the position
component of the pose's transform
is directly taken from the XR device, or it's simulated or computed based on other sources.
Syntax
let emulated = xrPose.emulatedPosition;
Value
A Boolean which is true
if the pose's position is computed based on estimates or is derived from sources other than direct sensor data. If the position is precisely gbased on direct sensor inputs, the value is false
.
Usage notes
There are two basic categories of XR tracking systems. A basic XR headset provides three degrees of freedom (3DoF), tracking the pitch, yaw, and roll of the user's head. No information is available about movement forward, backward, or to the sides. Any such data is taken from other sources, such as keyboard or mouse inputs or game controllers. As such, the position is considered to be emulated, so the emulatedPosition
property is true
.
Contrariwise, XR devices which can also track movement forward and backward as well as laterally—six degree of freedom (6DoF) devices—don't require any information from other sources to determine the user's position, so the value of emulatedPosition
is false
.
The same notion applies not just to the user's head, but to any object. A hand controller that can directly report its position would have a value of false
for this property as well. If its position is computed as an offset from another object (such as by basing it off the model representing the user's body), then this value is true
.
This information is important because devices whose position is emulated are prone to their offset drifting relative to the real world space over time. This is because emulating a position based on accelerometer inputs and models tends to introduce minor errors which accumulate over time.
Specifications
Specification | Status | Comment |
---|---|---|
WebXR Device APIThe definition of 'XRPose.emulatedPosition' in that specification. | Working Draft | Initial definition. |
Browser compatibility
Update compatibility data on GitHub
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
emulatedPosition
|
Chrome
Full support 79 |
Edge
Full support 79 |
Firefox
No support No |
IE
No support No |
Opera
No support No |
Safari
No support No |
WebView Android
No support No |
Chrome Android
Full support 79 |
Firefox Android
No support No |
Opera Android
No support No |
Safari iOS
No support No |
Samsung Internet Android
Full support 11.2 |
Legend
- Full support
- Full support
- No support
- No support
XRPose.emulatedPosition by Mozilla Contributors is licensed under CC-BY-SA 2.5.