この記事はSynamon Advent Calendar 2021の3日目です。
この記事の結論:現状ではそんなに面白い事は出来ませんでした!
2018年5月1日に発売、その翌年である2019年5月21日に後続のOculusQuestが発売され、2020年末で販売を終了。流れ星のように役目を終え去っていった一体型・3DoFヘッドマウントディスプレイであるOculus Go。
その軽量さや限定された操作によるお手軽さから未だに根強い人気もあるこのデバイスですが、先日このようなニュースが報じられました。 www.moguravr.com
これにより、OculusGoのブートローダーのロックを解除し、誰でもOSを開発、インストールすることが可能になる様なので、軽く触ってみました。
アンロックされたOSビルド及び、導入方法のドキュメントにはこちらからアクセス可能です。 developer.oculus.com
インストールは上記ウェブサイトの案内に従えばすぐ終わります。ただし、デバイスに保存していたデータはすべて消えるので注意してください。
試してみた様子
デバイスがアンロック状態になると、起動時に以下のような警告画面が表示されるようになります。
その後セットアップ画面に入ります。アンロック後もOSを入れ替えなければ、Oculusアプリを使ってセットアップ→ストアやアカウントへのアクセスは引き続き出来るようです。
adbで確認してみると、root権限は取れていました。
root権限があるので、色々見れたり消したり出来ます
adb reverseも打てます。
adb reverseが出来るならlocalhostでWebRTCのデバッグとかも出来ます。今どきはngrokがあるのでちょっと便利になる程度ですが……
ついでにPlayストアのapkをインストールしてみたものの、残念ながら使えないようです。(これはアンロックしなくても試すことが出来ます)
結局アンロックすると何ができるのか
root権限とブートローダーの署名チェック無効化により、Oculus Goの制限が解除されてAndroid(Linuxカーネル)で出来ることは全部出来るようになっている筈です。ただし、Oculus Goをかぶって見ることが出来るVR空間はOculusのメニューアプリがレンダリングしているものなので、そこに直接手を入れる、例えばポインタ形状を変化させたりメニュー項目を増やすといったような、いわゆるroot化したスマホのようなカスタマイズをするのは難しそうです。(そのアプリ自体を差し替えたりとかはできると思います。)
もうちょっとドキュメントが充実すれば色々出来そうな感じはあるのですが、現状だとちょっと情報不足で、面白いことをするのは難しそうです。自分もAndroidの低レイヤーに詳しいわけではないので、ちまちま調べながら引き続き探ってみます。