Oculus Connect 2 に行ってみた

2015年9月23日～9月25日にロサンゼルスで開催されていた[Oculus Connect 2](https://www.oculus.com/en-us/connect/)に行ってきました。
諸事情により24日までの2日間しかいれなかったのですが、いろいろとデモを体験したりしてきました。

## Henry デモ

最初に体験したのはOculusがVRのためのアニメーション映像コンテンツとして制作しているHenry（ヘンリー）のデモです。
![Henry](https://qiita-image-store.s3.amazonaws.com/0/56668/2e9bd65f-a864-2246-9a55-58042390057e.jpeg)

使用されていたのはおそらく製品版？のヘッドマウントディスプレイで、DK2以上にディスプレイ解像度が高くポジショントラッキングも正確で、まるで本当に自分が映像の世界に入り込んだように感じました。
ただの360度映像ではなくリアルタイムにレンダリングされている3DCGなので、しゃがんだり前のめりになって覗き込んだりしても、ちゃんと物陰に隠れていた部分が見えるっていうのに感動しました。

作品の内容としては映画のように一方的にストーリーをみせられるだけでユーザーとのインタラクションはありませんでした。
そこがちょっと物足りない感じしたんですが、まぁ、まだデモですし。ここからさらにブラッシュアップされていくとどうなるのかが楽しみです。

## ToyBox デモ

続いて体験したのは新型コントローラーのOculus Touchを使ったToyBoxのデモです。
Oculus Touchは両手にはめて使用するコントローラーです。特徴的なのはコントローラー自体もポジショントラッキングされていることで、VR空間の中をまさにTouchするように操作することができます。
基本的には親指・人差し指・中指の3本でボタンを操作することになるのですが、これで手を握ったり開いたりという動作を表現できて、VR空間の中で物を拾ったり投げたりすることができます。
![Oculus Touch](https://qiita-image-store.s3.amazonaws.com/0/56668/f0aaf41a-17ff-cfb4-165b-cff61826cc59.jpeg)

そしてこのOculus Touchのデモコンテンツとして用意されていたのがToyBoxです。
その名の通りおもちゃ箱をひっくり返したような部屋で、ナビゲーターの人と一緒に積み木やキャッチボールをしたりできるコンテンツです。
![CPr6ywkUwAAiCHG.jpg](https://qiita-image-store.s3.amazonaws.com/0/56668/d46efe9f-10a0-4f1c-32b5-010fc84f0398.jpeg)

なんていうか、**今までに体験したことのないスゴイやつです。**この体験を口で説明しろと言われても困る……
実際やってることは上記のような積み木やキャッチボールなんですが……**とにかくスゲーのです！**
これはもう、**いいからやってみろ**としか言えない。

今後どんなコンテンツが出てくるのか、とても楽しみです。

## Gear VR カフェ

Gear VRとゲームパッド等一式を貸し出してくれるGear VR カフェがあり、Gear VR向けのゲーム等様々なコンテンツを自由に選んで体験できました。

前々からOculus Homeで名前だけ見たことあって気になっていた[VR Karts](http://www.vrkarts.com/)をやってみました。
![vrkarts.png](https://qiita-image-store.s3.amazonaws.com/0/56668/328430ef-afa6-b2a0-16f4-67561c489e70.png)

…が、ちょっと気持ち悪くなってすぐやめました(-_-;)
レースゲームはVRでやるのは大変なのかも。

次に、前からGoogle Playストアで名前だけ気になっていた[Hitman GO](https://www.square-enix-montreal.com/en/games/hitmango)のVRバージョンをやってみました。
![hitman.png](https://qiita-image-store.s3.amazonaws.com/0/56668/19b9734c-d554-3519-baf4-bfee7f53ad8a.png)

こちらは定点カメラなのであまり酔うこともなく気持ちよく遊べたのですが、あんまりVRでやる意味はないかなぁ…という感想。まぁ、VR入門としては良いのかも。

いくつか遊んだ中で楽しかったのは、[Smash Hit](http://www.smashhitgame.com/)というゲーム。
![smash-hit-artwork2.png](https://qiita-image-store.s3.amazonaws.com/0/56668/13deeb54-4d0a-f49c-e4d0-ed2de8054cf1.png)

ガラスみたいなのを撃って割りながら奥へ奥へと進んでいくだけのシンプルなゲームですが、ゲームバランスが良く、VR酔いもほとんどなく、ガラスを割っていくのが快感でずっと遊んでいたくなりました。

## デベロッパーラウンジ

会場の隅の方にあった開発者の憩いの場(?)デベロッパーラウンジでは、各自の制作したデモを展示するコーナーがありました。
そこで一番おもしろかったのが[AirVR](http://www.clicked.co.kr/airvr)という、Gear VRとPCと連携させて**Gear VR装着者が観ている風景をPCでも観れるようにする**システムでした。
実際にはGear VRからのヘッドトラッキング情報をPCに送って、PCでレンダリングした結果をGear VRにストリーミング配信するという仕組みらしいです。
そのようなネットワーク構成をしている割には気になるほどの遅延はなく、スムーズな描画ができていました。すごい。

[紹介動画](https://youtu.be/fP1F9pJzzrw)

---

コンテンツのデモを体験したのはこれくらい。あとはトークセッションでした。
トークセッションの内容については、**私の英語の聞き取り力が微妙だったので割愛。**

VRコンテンツでは普通のゲーム以上に「どこから音が出てくるのか」をきちんと考えようねっていう話とか、
とにかくドローコールの回数は減らそうとか、
次のOculus Mobile SDKではAndroid Studio対応するとか、
`adb logcat -s VrApi`ってやっとくと幸せになれるとか、
新しいMultiView機能を使うと両目分の映像を一度のドローコールで描画できるよとか、

…そんな話をしていた気がします。

## まとめ

いろいろ体験してみて思ったのは、**もうDK2の時代は終わったな**ってことでした。一度最新モデルを体験してしまったら、もうDK2には戻れない。
そしてGear VRは意外とすごいんだなっていう。もっとみんな使ってみたらいいのに。Cardboardより全然良いよ。やりようによってはDK2よりも良い。Gear VRはもっと評価されるべき。

あと**Oculus Touchまじヤバイ。**これが未来の遊びなんだなって思いました。
Oculus Riftの製品版とかOculus Touchが発売する2016年はすごい年になりそうです。

## メモ

### Mobile SDKについて

Oculus Mobile SDKは以下のコンポーネントで構成される。

#### VrApi

* 最小限のAPI
* 動的リンク

#### LibOVR

* STLの代替

#### App Framework

* アプリケーション開発用のシンプルなフレームワーク
* 静的リンク

#### App Support

* GUI
* FBXレンダリング
* Soundマネージメント
* Localization

などのライブラリ。

* そろそろAndroid Studio対応する。
* 「Valcan」を調べておくと良さそう。
* 両目のイメージを一度に描画するMultiViewという機能を搭載。Vertexシェーダーをカスタマイズして利用する。