Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

猫でも分かるOculus警察撃退法 slideshare

13,529 views

Published on

2015/11/01に大阪で開かれた「Oculus Rift勉強会 関西 #02」での
講演資料です。

Published in: Engineering
  • Be the first to comment

猫でも分かるOculus警察撃退法 slideshare

  1. 1. 猫でも分かる Oculus警察撃退法 おかず@pafuhana1213 Oculus Rift勉強会 関西#02 #OcuBen 1
  2. 2. 自己紹介 Twitter –おかず@pafuhana1213 Oculus歴:約2年 – いろいろつくりました –UE4メイン 最近の出来事 – 冬コミ受かりましたー。遺影ー 2
  3. 3. 本講演(資料)のターゲット VRコンテンツを作ろうとしているけど どうしたらいいのか分からない人 3 VRコンテンツを作ってみたけど 何か酔いやすいし、 何かイマイチな作品になってしまった人
  4. 4. お品書き • Oculus警察とは • Oculus警察撃退する たったひとつの冴えたやり方 4
  5. 5. Oculus警察とは? VRコンテンツのデモをしていると 突然現れる謎の人種 5
  6. 6. Oculus警察の生態 • フレームレートが不足している VRコンテンツを体験すると、発狂する • 酔い対策が全く入っていない VRコンテンツを体験すると、発狂する • その場では何も言わず、Twitter上で 愚痴ることが多い – 性格の悪いコミュ症 6
  7. 7. Oculus警察撃退する たったひとつの冴えたやり方 VRコンテンツを作りましょう 7 ね、簡単でしょ? VRHMDが要求するフレームレートを 常に維持しつつ、 酔い対策を十分に入れた
  8. 8. 少し真面目に • VRは生牡蠣 – 一度酔った人は、二度とVRを体験しようとしない – あなたの作ったVRコンテンツが はじめてのVR体験になる可能性 • 独学で達成するのは困難 – 先人たちの成功・失敗・経験などを 全力で盗s…取り入れてきましょう 8
  9. 9. 真のアジェンダ • VRコンテンツを作る前に – コンテンツを遊ぼう – 色々と記事を漁ってみよう • 酔わないVRコンテンツへの道 – フレームレート編 – 酔い対策編 • 素晴らしいVRコンテンツへの道 9
  10. 10. VRコンテンツを作る前に… 良いVRコンテンツと 酔いやすいVRコンテンツを遊ぼう – VRコンテンツで酔い対策をする上での指針を 自分の中に構築 自分は天才だ、という過信は捨てること – 「他作品からの影響を受けたくない」的な 10
  11. 11. 良いVRコンテンツ • Oculusが展示しているコンテンツ • 「杜のVR部」で紹介されているコンテンツ – http://www.forest.impress.co.jp/docs/serial/oculusclub/ • OculusShareのTop Rated – https://share.oculus.com/ – 一部酔いやすいものがあるので注意 11
  12. 12. 酔いやすいVRコンテンツ • フレームレート不足 – 自作するのが手っ取り早い • 超重いモデルをシーンに大量配置 • 酔い対策なし – OculusSDKのSamplesフォルダにある 「OculusWorldDemo.exe」 • 自由に動き回れる一人称視点VR 12
  13. 13. 13
  14. 14. ここで少し注意 酔いや違和感を得なかったあなたは VR酔いに強い人です 14 VRコンテンツの酔い対策する上で 自分の感覚を一切信用しないで下さい • 他人にチェックプレイしてもらいましょう
  15. 15. 真のアジェンダ • VRコンテンツを作る前に – コンテンツを遊ぼう – VRに関する資料や記事を漁ってみよう • 酔わないVRコンテンツへの道 – フレームレート編 – 酔い対策編 • 素晴らしいVRコンテンツへの道 • まとめ 15
  16. 16. VR開発者のバイブル Oculusのベストプラクティスガイド 日本語版 – https://forums.oculus.com/viewtopic.php?f=74&t=25819&p=291801 VRコンテンツに関する知識・ノウハウの宝庫 – VR酔いの原因・対策 – VRコンテンツ製作時の注意点 – 没入感を向上させる方法 16
  17. 17. おすすめのVR系記事 • CEDEC2014 SCEの講演 – VR ~Project Morpheusで体感する未来~ • CEDEC2015 Oculusの講演 – すべては快適な体験のために:Oculusによる実践的VR開発技法 • CEDEC2015 バンナムのサマーレッスン講演 – プロデュース編、 テクニカル編、 開発者ディスカッション編 17
  18. 18. その他 参考資料 • VR関係の書籍 – バーチャルリアリティ学 – 売れるゲームのUI/UX 制作現場の舞台裏 • VRに関するページは12pのみ • SlideShareにて「VR」「Oculus」で検索 – http://www.slideshare.net 18
  19. 19. 真のアジェンダ • VRコンテンツを作る前に – コンテンツを遊ぼう – VRに関する資料や記事を漁ってみよう • 酔わないVRコンテンツへの道 – フレームレート編 – VR酔い対策編 • 素晴らしいVRコンテンツへの道 • まとめ 19
  20. 20. そもそもフレームレートって? 一秒間に表示されるフレーム(画面)の数 – 一般的なゲーム・動画 : 約30fps – ヌルヌルなゲーム・動画 : 約60fps 20
  21. 21. VRHMDが要求するフレームレート • Oculus Rift DK2 : 75fps • Oculus Rift 製品版 : 90fps • Gear VR : 60fps • PlayStation VR : 60fps • HTC Vive : 90fps 21
  22. 22. フレームレートを下回るとどうなるの? 死あるのみ 22
  23. 23. 少しだけ!少しだけだから! 23 死あるのみ 100%酔います 全てが台無しです
  24. 24. 高フレームレートを維持するには 超ハイスペックPCを買う! –VRは金!筋肉! 24 間違いではないけど そうではない
  25. 25. 高フレームレートを維持するには 想定している実行環境に応じた 高速化・最適化・仕様調整を行うこと – デモ当日に「PCの性能が低くて…はははwww」と 言っている人は、この意識が足りてない 25 デスクトップPC DK2+GTX970 だから・・・
  26. 26. VRコンテンツにおける高速化の指針 ボトルネックになるのは、描画処理(GPU) –画面2枚分表示するため モバイル3Dゲームでのノウハウが有効 –モデルのポリゴン数 –ライティング・シャドウ –半透明 –ポストプロセス 26
  27. 27. ここで少し注意 以降のスライドでは、専門用語が多数登場します 知らない用語に関しては 「あとで調べてみよー」という感じで 気楽に聞いて下さい。スライド公開しますし! 27
  28. 28. モデルのポリゴン数 個人開発の範囲では、対応は後回しでOK – 他の処理の方が断然重い – ただし、Gear VRは除く 28
  29. 29. モデルのポリゴン数への対応 超ハイポリゴンモデルは避ける – 最近のMMDモデルなど LODは有効 – アセットを購入する際はチェック モデルの結合は微妙 – オクルージョンカリングの関係 – ただし、Gear VRは除く 29
  30. 30. ライティング・シャドウ 基本的に、動的なライティングは避ける – ライトマップへのベイク – ライティング情報を事前に計算 30
  31. 31. ライトマップへのベイク方法 UE4 1. ライトの設定を「Static」に 2. Buildボタンを押す Unity5 1. ライトの設定を「Baked」に 2. LightingウィンドウのBuildボタンを押す 31 Unity5でライトを焼く ~テラシュールブログ~
  32. 32. ライトマップと動的オブジェクト ライトマップは、静的なライトとオブジェクトによるもの – 動的オブジェクトは考慮していない 動的オブジェクト – 少しでも動くオブジェクト – 静的設定をし忘れてるオブジェクト 32
  33. 33. ライトマップと動的オブジェクトの問題 • ライトが反映されないので、真っ黒に • 影が描画されない 33
  34. 34. 動的オブジェクトへのライティング • 動的なライティングを併用 – 当然、重くなる • ライティングの影響を受けない マテリアルを使用 – UE4 :Emissive – Unity5 :Emission • GI(グローバルイルミネーション)による 間接光を利用 – オススメ! 34
  35. 35. GIによる間接光を利用 静的オブジェクトからの反射光を事前計算 – 動的オブジェクトにも ライティングが反映される! – 処理が断然軽い! – ただし、大雑把なライティング… 実装方法 –UE4 :Lightmass –Unity5:Light Probe 35
  36. 36. 動的オブジェクトのシャドウ 丸影などのフェイク表現を使用 – 調整すれば、違和感はそこまでない – EpicのShowdownデモが採用 36
  37. 37. 半透明 重い –エフェクト・GUIなど 37
  38. 38. 半透明への対策 • 半透明を使わない表現に変更 – Showdownデモ • 半透明”っぽい”表現 – チェッカーパターンによる抜き • UE4:DitherTemporalAA • 他の処理負荷との相談 – エフェクトの量・表示時間など 38
  39. 39. ポストプロセス 描画した画面に対して行う「後化粧」 – 処理重め 1. アンチエイリアスは可能な限り有効に 2. Bloomもできれば有効に 3. 他は使わない (特にレンズ再現系) 39
  40. 40. その他の高速化 • 描画解像度の変更 – UE4 :hmd spコマンド – Unity5 :VRSettings.renderScale • 負荷が大きめの処理・設定を切る – プロファイラでボトルネック調査 – 反射、フォグなどなど 40
  41. 41. 奥の手 41 • 超ハイスペックPCを買う! –VRは金! • 仕様・表現の大幅変更
  42. 42. 個人的な考え 金で解決できるのなら、金で解決するのが手っ取り早い – ただし、デモ展示用のコンテンツに限る – 配布コンテンツの場合は 可能な限り高速化 or 描画オプションを用意 表現したい内容に応じた 各処理負荷のバランス調整が重要 – 例:ホラー系なのでライティングは拘りたい → ローポリモデル・エフェクト少なめに 42
  43. 43. おまけ • アンリアルな人 – Epicの中の人 シモダさん(@junyash)の高速化Tips • Oculus向けのコンテンツをUE4で制作するための ノウハウ共有♪(Oculus向けの最適化とか品質向上とか) • Showdownで使われていたノウハウの紹介も – 実際に高速化してみた記事 • 自分用も兼ねて、UE4+Oculusについて色々纏めてみる -高速化編- (2015/02/01) • ユニティな人 – Unite 2015: Optimizing for Consumer VR 43
  44. 44. 真のアジェンダ • VRコンテンツを作る前に – コンテンツを遊ぼう – VRに関する資料や記事を漁ってみよう • 酔わないVRコンテンツへの道 – フレームレート編 – VR酔い対策編 • 素晴らしいVRコンテンツへの道 • まとめ 44
  45. 45. VR酔いの原因 その1 頭の移動・回転と、表示内容とのズレ – 体感と視覚のズレ – ポジション・ヘッドトラッキング 対策 – 高フレームレートの維持 – 常にトラッキング情報をカメラに反映 • どんな理由があろうが、例外はない 45
  46. 46. VR酔いの原因 その2 視覚誘導性自己運動感覚(ベクション) 46 視覚 体感 ≠ VR酔い発生!
  47. 47. ベクションが発生しやすい条件 • カメラの移動・回転 – トラッキングの反映とは別で ゲーム内での制御によるもの • カメラ以外のオブジェクトの 移動・回転 – カメラ移動・回転と同じ見え方を 引き起こす場合 47 キャラクタ固定
  48. 48. ベクションを軽減させる為に • カメラを動かさない • 酔いにくいカメラ挙動 – 個人差によるものが大きい • ベクションを感じさせない工夫を導入 – 全世界的に研究・検証段階 48 CEDEC2015 Oculusの講演より
  49. 49. 基準物によるベクション軽減 画面上での変化がない・少ない物体 – 自分が動いていないという感覚を強調 基準物の例 – コクピットなどのフレーム表示 – 移動目標地点 – 遠くにある巨大な背景物 49
  50. 50. 三人称視点VR カメラ制御の自由度向上 – 酔い対策を入れやすい • キャラクタへの追従移動 • カメラを高い位置に配置 などなど 詳しくは、前回の資料で – 「猫でも分かる3人称視点VRコンテンツ」 50
  51. 51. その他 • カメラ移動時に特殊処理を使用 – グリッド表示 – フィルタを使ったぼかし処理 • テレポートによるカメラ移動 – 瞬間的な移動なら ベクションは発生しない 51
  52. 52. ノウハウはどんどん共有・検証しましょう 酔い対策のアイデアはまだまだ眠っている – あなたのアイデアが 今後のデファクト・スタンダードになる可能性も 思いついた・実装したアイデアは ネットに公開して色んな人に検証してもらいましょう! 52
  53. 53. おまけ • 某O社の中の人 – @GOROman – @needle • Oculusデベロッパー助け合い所(Facebookグループ) • VR専門のニュースサイト – MoguraVR – PANORA VIRTUAL REALITY JAPAN – 白ペンギン – Road to VR - Virtual Reality News - Road to VR 53
  54. 54. 真のアジェンダ • VRコンテンツを作る前に – コンテンツを遊ぼう – VRに関する資料や記事を漁ってみよう • 酔わないVRコンテンツへの道 – フレームレート編 – VR酔い対策編 • 素晴らしいVRコンテンツへの道 • まとめ 54
  55. 55. 素晴らしいVRコンテンツとは? • 酔わない • ハイクオリティな内容 • 没入感・プレゼンス(実在感)を ユーザに強く与えるコンテンツ – 今後のVRコンテンツで より重要となる要素 55
  56. 56. 没入感・プレゼンスを向上させるには プレイヤとキャラクタ・VR空間との 双方向的なインタラクション 56
  57. 57. キャラクタ → プレイヤ プレイヤに向けたアクション – プレイヤを見つめる – プレイヤの側に寄ってくる – 頭を近づけると避ける・嫌がる 57 プレイヤに触れる系の アクションは避けた方が無難… – 触感がないため
  58. 58. VR空間 → プレイヤ オブジェクトベースオーディオの使用 – 前後・左右・上下の定位感 – 頭の位置・向きによって聞こえ方が変化 OculusAudioSDKが最も手軽 – UE4, Unity共に対応済み 58
  59. 59. プレイヤ → VR空間 VR専用コントローラを使った オブジェクト操作 – つかむ – ふる – おく – なげる – うつ などなど 59
  60. 60. 没入感・プレゼンスを失うのは一瞬 没入感・プレゼンスを失う原因の例 – 酔いを感じた – キャラクタモデルの中が見えた – オブジェクトに触れたけど何も反応がなかった VRHMDの製品版リリース後の課題 – 破綻を発生させず 双方向インタラクションを実現し続けられるか 60
  61. 61. 真のアジェンダ • VRコンテンツを作る前に – コンテンツを遊ぼう – VRに関する資料や記事を漁ってみよう • 酔わないVRコンテンツへの道 – フレームレート編 – VR酔い対策編 • 素晴らしいVRコンテンツへの道 • まとめ 61
  62. 62. まとめ • Oculus警察の撃退法を伝授しました – 高フレームレートの維持 – VR酔い対策 • より良いVRコンテンツにする方法について – ユーザとキャラクタ・VR空間との 双方向的なインタラクション 62
  63. 63. おわり ご清聴ありがとうございました 時間があれば…質疑応答 たぶんない 63

×