Upload
katsuomi-kobayashi
View
497
Download
2
Embed Size (px)
Citation preview
VRアトラクションの制作「ソロモン・カーペット」メイキング
2017-01-28VR Tech Tokyo #5
自己紹介
• ハンドル こりん
• 本名 古林克臣(こばやしかつおみ)
• 職業 Unity・UE4エンジニア株式会社ハシラス CTO (2016年7月~)
• 個人活動 「VR開発メモ」など
株式会社ハシラスVRアトラクションの制作を得意とするコンテンツ制作会社
常設VRアトラクション
「ソロモン・カーペット」
アドアーズ渋谷店で2016年12月から稼働開始
どうやって作ってるのか
改めて、株式会社ハシラス
Oculus Rift DK1の頃からVRコンテンツを作っていたメンバーが集まって立ち上げ
現在の主力メンバー約10名
元手妻師が1名
Unityエンジニアが4名
ほかハードウェア・エンジニアがいて
大型筐体の設計・製造ができるのが特徴
「ソロモン・カーペット」の構成
シリンダーで傾くカーペット筐体と大型送風ファン2基
(サーバから制御コマンドでシーケンス駆動)
サーバ2台(冗長構成)+クライアント6台
クライアントはHTC ViveをつけたバックパックPC(MSI VR One)
2人が体験している間に次の2人がPCを背負って待機+予備2台
これによってマルチプレイ・ケーブルレスのルームスケール+ライドVRを実現!
全部入り!
ソフトウェア:まずUNetの検証
UnityのUNetを今回初めて使用(これまでは旧ネットワーク機能だった)
とにかく動作するサンプルがない!
Unity公式のチュートリアル「Multiplayer Networking」(英語)
を通しでやるのが一番いい(あと凹みTipsとか)
ヘッドセットとモーションコントローラ位置の同期を確認
エディタの複数起動が便利!
シンボリックリンクを使うと、一つのプロジェクトファイルを複数のエディタで開いてサーバ・クライアント連携のテストが可能(テラシュールブログを参照!)
プレイヤーキャラクター
Final IKアセットのVRIK
ヘッドセットの位置にあわせてキャラクターが歩いてくれるコンポーネント
TwitterのVRコスプレで話題になっているあれ。速攻で投入!
使ってみると問題が発覚カーペットを飛ばすと、カーペット上のキャラクターがとことこ歩いていってしまう
(Final IKの作者も対応中)
まずシーンのどこかでIKを解決して
そのTransformをカーペット上のモデルに毎フレームコピーすることで対処
シナリオとタイムライン
2人で歩きまわってカーペットで飛んでいけることをプロトタイプで確認
「こんな体験を入れたら面白いんじゃないか」というフィーチャー案をリストアップ
↓
代表の安藤がタイムラインと脚本を作成、BGMを発注、声を収録
それをもとに実装を進めた
骨組みから作る(重要)
最初にシーン全体をざっくり作ってスケールと5分間の大まかなカーペット軌道を確定
アトラクションとして最低限機能するようにしてからクオリティアップという流れ
すべてはタイミング
5分間の間に最大限充実した体験をしてもらうことに意を用いている
リズムが大切!(タイミング調整の繰り返し)
実装上も、可能な限りゲーム時間のみを参照してアニメーションやイベントが発生
ゲーム時間による高速な頭出し
キーボードの1~9で特定のシーンにジャンプ
15秒スキップや3倍速再生など
何か修正を加えたら即座に頭出しで確認できるように
ザコキャラクター
カーペットに向かって飛んでくる→カーペットの子に
毎フレームの位置同期はしていない
スポーン時にサーバで数点の通過座標を生成して渡す
Viveによるモーションキャプチャ
課題
PCとVRヘッドセット1つでもなかなか動かないことがあるのに
これだけ構成が複雑になると、とにかくいろんなトラブルが起きて運用負荷がかかる
ノウハウの蓄積、安定動作するフレームワーク・自動テスト環境の整備
ハードウェアのコンポーネント化
「マルチプレイで体験時間数分のVRアトラクション」
というフォーマットのものは楽に作れるようになって、違うこともやっていきたい
B2B、アカデミック、コンシューマVR、MR……
必ずしもVRアトラクションにはこだわってません!
検索ハシラス