このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

VRDisplay.getPose()

非推奨

この機能を新しいプロジェクトで使用することは避けてください。 Development of the WebVR API halted in favor of WebXR. この機能は、ウェブ標準やブラウザーから除去される可能性があります。

代わりに使用を検討すべき機能として、 WebXRがあります。

getPose() は VRDisplay インターフェイスのメソッドで、現在のフレームが実際に描画される時点の未来の VRDisplay の予測ポーズを決める VRPose オブジェクトを返します。

メモ: このプロパティは、古い WebVR API の一部でした。 WebXR Device APIに置き換えられました。

こちらでも非推奨でした。 — 代わりに VRDisplay.getFrameData() で VRPose オブジェクトを受け取ってください。

構文

js
getPose();

引数

なし.

返値

VRPose オブジェクトです。

例

VRDisplay オブジェクトへの参照を得ると、ディスプレイの現在のポーズを表す VRPose を取得することができるようになります。

js
if(navigator.getVRDisplays) {
  console.log('WebVR 1.1 supported');
  // Then get the displays attached to the computer
  navigator.getVRDisplays().then(function(displays) {
    // If a display is available, use it to present the scene
    if(displays.length > 0) {
      vrDisplay = displays[0];
      console.log('Display found');

          // Return the current VRPose object for the display
          var pose = vrDisplay.getPose();

          ...

    }
  });
}

しかし、非推奨ではない VRFrameData オブジェクト(VRDisplay.getFrameData()で取得)の pose プロパティを使用して、表示するためにディスプレイに送信する前に各フレームの現在の姿勢を取得することをお勧めします。これはアプリのレンダリングループの各反復処理で行われるため、ポーズデータが最新であることを確認することができます。

仕様書

このインターフェイスは、古い WebVR API の一部でしたが、 WebXR Device API に置き換えられました。標準化される予定はありません。

すべてのブラウザーが新しい WebXR API を実装するまで、すべてのブラウザーで動作する WebXR アプリケーションを開発するには、A-Frame や Babylon.js や Three.js などのフレームワークを利用したり、ポリフィルを利用したりすると良いでしょう [1]。

ブラウザーの互換性

関連情報