読者です 読者をやめる 読者になる 読者になる

【講演メモ】OculusConnect 9/20 GETTING STARTED WITH GEAR VR

GearVRに関する講演です。

講演全体のスケジュールについては、以下を参照ください。


Oculus Connect2014の講演を確認しました(9/19追記) - Cross Road


登壇者:Ryan Rutherford, Software Engineer @ Oculus & Max Cohen, VP Mobile @ Oculus
(Q&A時にJohn Carmackさんが登場)

GearVRの開発環境

 ・Unityで開発可能
・動作確認にはDK1、DK2も使用可能
 ・Oculus Mobile SDKとして数ヶ月以内(2014年末か2015年初頭)にリリース予定
 (Q&A記載のように、パフォーマンス確保にはUnity Android Proが必要です)
 ・30個ほどのデモアプリ、ドキュメントを付属予定

(補足)
利用手順のムービーを見る限り、DK1と同様に、
 plane配置
→OVRPlayerController相当を配置
→実行
→Game Viewに画面が表示される

 となっていたので、Unity上での開発は難しくないように見えました。
 (DK2向け開発の場合、この時点で画面が真っ黒になることもあるので)

GearVR使用時の注意点

・5〜20min程度の体験とすること。3時間など、長時間の使用は危険
(補足:酔うから?機器が長時間の発熱に持たないから?詳細な理由は言及ありませんでした)

・熱問題は依然残っているので注意
(補足:Note4やGearVRが熱くなることを言っている?)

GearVRの操作手段

 操作手段が異なると、得られる経験も変わる。

操作方法の例
・Gaze(一定時間見つめることで反応させる)
・Tap (GearVR右側面のタッチパッドを使う)
Bluetooth接続のゲームパッド
・Nod、 Myo、 他の新しいものなど

補足:その他、GearVRは右側面にBackボタン、こめかみ付近に、ダイヤル型の操作スイッチがありました

GearVRで60FPSを確保するための前提条件

f:id:Takyu:20140920181829j:plain

パフォーマンスチューニングの手法

 チューニング方針
 f:id:Takyu:20140920184252j:plain

 以下、4つのデモアプリを紹介しつつ、60FPSを確保するチューニング手法を説明

1.Asteroid Gunner
内容:FPS視点で隕石を破壊するゲーム。装着者の目線で照準を合わせることが特徴。
f:id:Takyu:20140920182107j:plain

 工夫したところ:
 f:id:Takyu:20140920182454j:plain

 補足:
 BuiltinされたUnityのコンポーネントはいつでも最適化されてるわけではない。
 必要があれば自分で置き換えた方がよい。
 例:brightnessやスケール(距離)の処理など。

 2.Treasure Hunter
内容:FPS視点の宝探しゲーム。
 f:id:Takyu:20140920182539j:plain

 工夫したところ:
 f:id:Takyu:20140920183034j:plain
 補足:
 ・壁や曲がり角に近づいたときは動きを遅くした(描画のための時間稼ぎ?)。
bluetooth接続のゲームパッドで操作
 ・lightmapやmaterialは同じものを使い回すようにしてリソースを節約
 ・衝突判定はメモリやCPUを無視できないくらい必要とするため、床と壁の最小限に付けただけ
 ・カリングが効いており、最小限の範囲以外は全く描画していなかった。


3.Rocket Toss
 内容;輪投げのようにフリスビーを投げる。輪投げがロケットになっており、入ると、ロケットが飛び花火が打ち上がる。
 f:id:Takyu:20140920183116j:plain

 工夫したところ:
 f:id:Takyu:20140920183541j:plain

 補足:
 ・特徴は、VR向けのメニュー画面GUI、得点表示
 ・4096×4096の1つのテクスチャのみを使い回すことでメモリを節約
 ・skyboxやLOD(ブログ参照)を使ってメモリを節約
 ・particle emitter数を削減するためにスプライトシートを使用

4.VR Quest
 内容:俯瞰視点でゴーストをやっつけるゲーム
 f:id:Takyu:20140920183629j:plain
 工夫したところ:
 f:id:Takyu:20140920184015j:plain
 
 補足:
・今回の俯瞰視点に対応するため、自分の動きとは別にキャラクターが動いても不快にならないようなカメラ制御を新しく作った。
・基本的に1つのテクスチャで構成している。これでdrawcallを削減
・dynamic lightingを使ってdrawcallを削減

Q&A

3D Audioについてはサポートされている?
今のUnityではBass関係の機能がサポートされていない。VRの没入感を損なうので、Unityに組み込めないかを依頼しているが、現状いつできるかを確約はできない。

2.パフォーマンスを稼ぐにはUnity Android Proの機能が必要になりそうな気がするが、 Android Proの購入は必要か?
  Render-to-Textureやオクルージョンカリング はPro版の機能であり、必要ではある。
  Pro版購入不要で使えるか、については努力はするが、現時点では約束できない。

 補足:Q&Aのときだけ、John Carmackさんが壇上に来られてました。質問2についてはCarmackさんが何かしゃべろうとしましたが、登壇者に遮られていました。
Keynoteの80分ノンストップの話し方からも、Carmackさんは相当にお話好きなのだと思います)


以上です。
SDKはまだ調整中のようですが、講演を聴く限り、Oculus Mobile SDKはかなり使いやすいように感じました。
リリースが楽しみです!