This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The resetPose() method of the VRDisplay interface resets the pose for the VRDisplay, treating its current VRPose.position and VRPose.orientation as the "origin/zero" values.

After resetPost() has been called, future poses returned from VRDisplay.getPose()/VRDisplay.getImmediatePose() will describe positions relative to the VRDisplay's position when resetPose() was last called and will treat the display’s yaw when resetPose() was last called as the forward orientation.

The VRDisplay's reported roll and pitch do not change when resetPose() is called as they are relative to gravity. Calling resetPose() may change the VRStageParameters.sittingToStandingTransform matrix.

Syntax

vrDisplayInstance.resetPose();

Parameters

None.

Return value

Void.

Examples

// Assuming vrDisplay already contains a VRDisplay object,
// and we have a <button> referenced inside btn
btn.addEventListener('click', function() {
  vrDisplay.resetPose();
  console.log('Current pose set as origin/center');
});

Specifications

Specification Status Comment
WebVR 1.1
The definition of 'resetPose()' in that specification.
Editor's Draft Initial definition

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support Yes1 2 Yes

553

584

No ? ?
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic support No Yes5 ? ? No ? ?

1. Only works on desktop in an experimental version of Chrome (other builds won't return any devices when Navigator.getVRDisplays() is invoked).

2. This feature is behind the WebVR preference. To change preferences in Chrome, visit chrome://flags.

3. Windows support was enabled in Firefox 55.

4. macOS support was enabled in Firefox 58.

5. Currently supported only by Google Daydream.

See also

Document Tags and Contributors

 Contributors to this page: fscholz, chrisdavidmills, abbycar
 Last updated by: fscholz,