[GDC 2018]VRでマルチプラットフォーム展開をしていくということ
さて「Floor Plan」というのは同社が開発したVRパズルアドベンチャーで,最初はGear VRでのGame Jamで作られ,その後,RiftとGear VR用として開発されていたものだ。それを半年後にDaydreamに移植し,そこから1年弱でSteamVR(Viveなど),Windows 10(HploLens/Windows MR),そして最初のリリースから2年弱になろうというところでPlayStation VR版がリリースされる(講演の翌日が正式リリース日になっていた)。新しく出るプラットフォームに次々と対応していった形だ。
世の中に多くのVR(MR)ヘッドセットがあるものの,根本的な部分でいえばほとんどがまったく同じ仕組みで動いているのだから,それぞれで別々にゲーム開発をするよりは効率的だ。開発はUnity上で行われているので,それぞれに合わせてビルドできるようにしてやればよい。
Floor Planでは全6機種のVRヘッドセットに対応すると同時に,多くの入力デバイスにも対応している。最初のRiftからしてコントローラ2つ付きで発売されたうえ,Gear VRにしてもデバイスは追加されているので,入力デバイスの数はそれどころではない。
入力デバイスの場合は,機能の違いで操作性がまったく変わってくるので難物ではあるが,逆に言えば,操作性をなんとかすれば全部で動くゲームも現実的になるわけだ。
全部がだいたい同じでも全部が微妙に違う。性能が違ったり画角が違ったりするとプログラム側もそれに合わせなければならない。それをどのように管理するのかだが,Turbo Bnuttonでは当初,プラットフォーム別に分けようとしていた。Unityのビルドオプションなどからすると自然な発想かもしれない。ということで,主に性能的な見地から分類したのがBucket Approach(バケツ方式)となる。
ハードウェア的な部分はだいたいプラットフォームで決まってくるのだが,Daydreamなどは少し幅が広く,解像度(UnityでのEye Tecsture)の大きさを見てもいくつか種類がある。
単純にプラットフォームごとに分けるのではなく機能別に管理する必要がある。それがAttribute Approachだ。ある程度はプラットフォームで分けて,個別の違いはマニュアル操作で調整していく方針である。プラットフォームごとに管理するよりも柔軟な対応が可能となる。
VRヘッドセット側で重要なのは,角度だけの3DOF(3自由度:3方向回転検出)なのか,移動もできる6DOF(6自由度:3方向回転+3方向移動検出)なのかとなる。動き回れるかどうかでゲーム体験はかなり変わってくるのだ。
コントローラ側では,VR用なのか一般ゲーム用なのか,またその機能でも大きな違いがあり,大きく4つに分類できる。つまり,ゲームパッド型,ボタンだけのクリッカー型,コントローラの角度が取れる3DOF型,コントローラの位置も取れる6DOF型の4つだ。
どの機種がどのタイプをサポートしているのかを示したのが下の図だ。PS4のコントローラはゲームパッドでもあるが6DOFも兼ねそうなのでもう少し複雑になるだろう。
なお,コントローラの数を数えると表題の「10」よりも多いのだが,Xboxコントローラを使うものが多いので種類としては10となっている。
なお,同じタイプに分類されたからといって,機能的に同じとも限らない。Oculus RemoteとGear VRのコントローラはどちらもクリック型で形も似ているが,Gear VRではタッチパッドがクリック可能になっている。
また,6DOFのハンドコントローラも親指で操作する部分のボタンの数などは機種によって異なっている。そこで内部的には,OculusかViveかそれ以外かで判定して処理を分けているという。
コントローラの機能が違えば,ゲーム内のインタフェースも当然変わってくる。Turbo Buttonでは,大きく,
- Gaze & Touch(見つめてボタンを押す)
- Point & Click(位置を合わせてボタンを押す)
- Grab & Throw(直接取って投げたりする)
の3種に分類している。
これを念頭に置いてゲームインタフェースを作り,それぞれで(やり方は違っても)同じことができるようにしていけばよい。
とくに言及されていたのは,ハンドコントローラの使い方だ。VRゲームに「手」を登場させることのメリットは計り知れない。その運用には注意が必要かもしれない。主な問題は「手が届かないときはどうするのか」の部分にあるようだ。
直接手に取れるときはなにも問題がない。遠くにあるものを引き寄せてつかめるようにすることは,ゲームの操作性上は非常によいものである。わざわざしゃがまなくても地面に落ちているものを拾えたり,手が届かないものを引き寄せて取ったりできるのだ。Gaze & Touchなどとの操作の一貫性も取りやすくなるかもしれない。
だからといって,これをインタフェースとして完全に否定するのはどうかと思うが,パズルアドベンチャーには明らかに向いていなかったのだろう。
そんな失敗も経て,Turbo ButtonはこういうところならVRゲームをほかのシステムに移植するのもよいのではないかというリストを挙げていた。そのゲームが移植先のプラットフォームでも問題なく動き,適しているモノ。そのプラットフォームでもうまくいくと明らかに分かるモノ。そのプラットフォームに移植することでメリットのある場合(マーケティングをやってくれるなど)。その作品に大きな続編がある場合などだ。
逆にもう少し消極的な理由やちょっとやめとけといった感じなの事項もまとめられている。次のようなものだ。インストール台数が増えるとそれだけチャンスが増える(労力に見合うかは別)。今のプラットフォームだけでいいのではないか(移植の手間はともかく,マーケティングなどの労力も大きい)。ほかのデベロッパが別のプラットフォームで大成功しているのなら,そのプラットフォームでやってみるのもいいかもしれない(こっちもヒットするという保証はない)。続編がなくて,そのプラットフォームにはあまり合わなくても,Skyrimはそれでも大丈夫なのであなたの作品ももしかしたら大丈夫かもしれない(やめとけ)。
少なくとも,Turbo Buttonは今後もVRのマルチプラットフォーム展開をしていくだろうと語り,講演を締めくくっていた。