(*chrome v79以降では標準でWebXR Device APIが使えるようになったようです。)
https://qiita.com/ikkou/items/0c6231ddc7d916419690
ただし、chrome v81までは、下記の変更をする必要があるのは変わらない模様です。
- Oculus VR support: Enabled (Oculus Rift, RiftS用)
- XR device sandboxing: Disabled
WebXR Device APIとは何か
WebXR Device APIとはブラウザとOculusRiftやHTCVIVEなどのVRデバイスが通信を行うためのAPIである。
同様の機能を提供するAPIとしてWebVRがあるが、標準ではChromeの77では廃止されることが決まっている。WebXR Device APIは、WebVRの後継として策定が進んでいる。
2019/08/19現在、これはW3Cの仕様策定段階でいうと最初期に当たるEditor's draftであり、仕様が確定している状態ではない。しかしながら開発者のやる気は最高潮*(https://www.chromestatus.com/feature/5680169905815552 によるとWeb Developers: Strongly positive
)である。W3Cがどのように仕様を策定していくかについては参考文献を参照。
Chrome以外のブラウザでも対応が進んでおり、Firefoxでは標準で使える他、Oculus GOやOculus QuestなどのOculusブラウザでも標準で対応している。
WebXR Device APIの対応バージョン
- Chrome: 76以上
Chromeの設定方法
- Chromeのバージョンを確認して必要であればアップグレードする
- WebXR Device APIを使用できるようにChromeのFlagsを変更する
- Chromeをリスタートする
使用しているchromeのバージョンを確認する
設定
> Google Chromeについて
> Chromeについて
(参考までに画像ではChromeのバージョンは76.0.3809.100
)
WebXRを使用するためのFlagsを有効化する
chrome://flags
にアクセスして、このページに書いてあるように以下の項目を変更する。検索すると初期はDefault
になっているため、Enabled
またはDisabled
に変更する。
- WebXR Device API:
Enabled
- Oculus VR support:
Enabled
(Oculus Rift, RiftS用) - OpenVR support:
Enabled
(HTC VIVE用) - XR device sandboxing:
Disabled
Chromeをリスタートする
Flagsの変更を反映させるためにChromeをリスタートする必要がある。忘れがちなので必ずしましょう。
サンプルを動かす
WebXR Device APIのサンプルを公開しているページからサンプルを選び試してみる。
https://immersive-web.github.io/webxr-samples/
例えば、360°のシアターモードで映画館のようにサンプル動画を観れるサンプルは以下のものである。VRデバイスが接続されていればENTER VR
ボタンを押すことでVRモードに移行することができる。
https://immersive-web.github.io/webxr-samples/stereo-video.html
WebXR Device APIの使い方を詳しく知りたい人はこちら
WebXR Device API Explained
WebXR Device APIの説明やユースケース、実装方法など具体的に書いています。