LoginSignup
84
89

More than 3 years have passed since last update.

これから VR アプリケーションを開発する時に知っておくべきこと 10 選

Last updated at Posted at 2017-09-17

はじめに

7 月に Unity で VR アプリケーション開発することをやめ、 Python や Rails の世界に入りました。
VR 開発の進化のスピードは非常に早く、ここに書くノウハウはすぐに古い情報になると思います。既にもう古いものもあるかもしれません。
ですが、これから VR を開発される方が少しでもラクに開発できればと思い、 2 ヶ月前の記憶を辿って記事にしておきます。

1. ユーザー間コミュニケーションの実装

Photon が手軽。スケールできるまでは無料で使える(20人同時接続まで無料)。
* 価格: Photon Pricing
* Asset Store にライブラリあり
* 音声通信は PUN Voice

スクリーンショット 2017-09-17 21.45.46.png

2. アバターを動かす

自前で IK を実装するのは大変です。まずは Final IK を使いましょう

Oculus Rift / Oculus Touch や Vive Controller の位置を Final IK の頭や手の位置と紐付けると、自分の動きが VR 空間上で再現できる。

スクリーンショット 2017-09-17 21.06.49.png

3. 一人称の移動

視線を定速や加速をかけて移動させると VR 酔いにつながるため、テレポートが主流。
参考記事: HTC ViveでThe Labのような瞬間移動の実装

HTC Vive の The lab のように放物線で移動先を選択させると、極端に遠いところに移動することもなくユーザー体験も良い。

4. VR 空間のメニュー

常にどこかにメニューが見えていると邪魔です。腕時計をメニューにしましょう。
Facebook Spaces

5. 声から口の形を推定したい

アバターコミュニケーションをする時に口の動きは大切です。OVRLipSync を使いましょう。

https://www.youtube.com/embed/vk0FypceXJw
スクリーンショット 2017-09-17 21.51.07.png

6. 触覚フィードバック

ものに触れた時、人に触れた時には触覚フィードバックを。

で実装。

7. 音声は 3D サウンドで表現

Unity の AudioSource で簡単に設定できます
Audio Source
参考: https://docs.unity3d.com/ja/540/Manual/class-AudioSource.html

8. Facebook や Twitter へのソーシャル拡散

これが結構面倒だった。
ブラウザには Embedded Browserを使い、Collider を設定してタッチでスクロールやタッチができるようになるといい感じ。タブレッドデバイスのように操作できる。キーボードは別途実装して、キータッチを Browser 側のクラスに投げてインプットできるようにする。

認証は面倒なので シェアURL で認証無しで乗り切る。

9. 動画撮影・録画・再生

撮影・録画は RockVR のプロジェクトが無料で優秀。
* Video Capture
* VR Capture

スクリーンショット 2017-09-17 21.54.57.png

再生は UMP が良かった。

10. FPS

FPS は常に気にする。FPS が低いと VR 酔いにつながりやすいし、 Oculus は 90 FPS 以下だと申請も通らない。

  • カメラの数は少なく
  • ポリゴン数は少なく
  • メッシュコライダーはできるだけ使わない
  • ライトはできるだけベイクする
  • 遠目の景色は Skybox で
  • Asset bundle のロード時はローディング用のビューを見せ、カクつきを見せない

まとめ

以上、他にも大事なことがいくつもあった気がするが、自分が詰まった部分や印象に残っている部分を抽出しました。
また、大事なことを思い出したら追記するかもしれません。

84
89
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
84
89