イベント
発売間近のVRストラテジー「Skyworld」のプログラマーが驚きの開発テクニックを披露したOculus Connect 4のセッションをレポート
本稿では,Vertigo GamesのテクニカルリードであるTrevor Blom(トレヴォ―・ブロム)氏による「Shooters and Strategy Lessons Learned from Skyworld and Arizona Sunshine」(SkyworldやArizona Sunshineを通して学んだシューティングゲームやストラテジーの開発レッスン)というセッションの模様をレポートしよう。
物理表現を多用した「Arizona Sunshine」
Vertigo Gamesは,まだユーザビリティやロコモーション,つまり酔いを抑えつつ,ゲーム表現を最大限に引き出すというノウハウが蓄積されていなかった時代からVRゲームを開発していただけに,苦労は多かったようだ。
実際,ブロム氏たちの「Arizona Sunshine」は,当初「走行するピックアップトラックの荷台に乗って,四方から襲い掛かってくるゾンビを倒していく」というシステムだったとのこと。プレイヤーは走るトラックの荷台の上を自由に歩けるようになっていたが,社内のほぼ全員が酔ってしまう代物だったという。
そのため,プレイヤーがトラックを運転してゾンビを引き倒すというドライビングアクションにしてみたが,こちらもVR酔いを軽減するにはいたらず,結局はオーソドックスなFPSに落ち着いた。
そこでも当初腕が表示されるインタフェースを,イマージョン(没入性)が損なわれることから,手だけの表現に変更するなどしている。
ブロム氏によると,「Arizona Sunshine」の開発におけるテクノロジー面での制約は,「Unity 5.4.2p4」,「シングルパス・レンダリング」(Single Pass Rendering),「アシンクロノス・タイムワープなし」(No Asynchronous Timewarp),そして「ディファ―ド・レンダリング」(Differed Rendering)というものだった。
Intelとは深い協力関係を築けたが,彼らの目的は「PC向けVRの台頭を機にi7系統のプロセッサーを売る」というものであり,その結果としてハイエンドなグラフィックスを追求したという。
実際,「Arizona Sunshine」はゾンビの肉体ゴア表現があり,銃撃によって窓ガラスが壊れたり車のタイヤがパンクしたりする。さらに手りゅう弾やロケットランチャーを使うと地形までが変形したり,さらに周囲の樹木が爆風が起きるたびにザッとそよぐといった,CPU演算を多用するギミックが盛り込まれていた。
問題となったのは,こうした表現が90fpsを確保しなければならないVRゲームにおいてのボトルネックになりうることだ。例えば流れ弾が空中を通過していくだけでも,その途中にある車が微妙な反応を示し,パフォーマンスが落ちてしまう。特に,十数台の乗り捨てられた車が重なる橋などの長いマップにおいては,大きな問題になったとブロム氏は語った。
アニメーションが多過ぎるマップの処理を解決する“トリック”
一方,「Skyworld」はターン制のストラテジーで,円形テーブルの天板に描かれたミニチュア世界において,プレイヤーが駒のようなユニットを動かして敵軍と戦うというものになっている。相手の魔女との駆け引きを行っていくキャンペーンストーリーに加えて,マルチプレイモードでの対戦も可能だ。
「Skyworld」のゲーム世界の中央に用意されたテーブルは「オーバーワールド」と呼ばれており,メニュー内にあるレバーを引くことで,天板がぐるりと回転し,アイテムのショップや,ユニットを生産するバラック,玉座の間など,さまざまなシーンに切り替わる。
また,双方の将軍ユニットが激突すると,同じように天板がひっくり返って戦場マップが出現し,プレイヤーはカードバトル風の戦いに挑むことになる。
つまり,「Skyworld」では,VRゲームの特徴である没入感の高さを維持するために,場面転換時にローディング画面を挟むのではなく,一部だけを切り替えるという,非常にハイレベルな表現を行っているのだ。
しかし,このテーブルの上にはさまざまなオブジェクトに加えて,細かいアニメーションや物理表現も存在する。こういったものを載せたまま“ひっくり返す”のは,パフォーマンス面で致命的なコストになってしまうのだ。
さて,ブロム氏らはこの問題をどう解決したのか。それが今回のセッションで明らかにされ,会場に集まったVR開発者たちを大いに沸かせた。その驚くようなトリックは,Oculusの公開した映像の17:00から18:00ごろまでを見ていただければ一目瞭然だ。
「Skyworld」の世界において,実際に回転しているのはテーブルの天板ではなく,プレイヤーの視点を含めるテーブル以外のゲーム世界だったのである。
ブロム氏が言うように,プレイヤーは逆さ宙づりになった状態でプレイしているというわけだ。実際に回転するテーブルの枠やメニュー,部屋の壁といったグラフィックスはテーブルの上ほど“重く”はないので,回転させてもパフォーマンスには影響しにくい。
ちなみに,Vertigo Gamesがパフォーマンスコストのチェックに利用しているのは,Intelが無料で公開している「Graphics Performance Analysers」(GPA)とのこと。
さらにブロム氏は「Arizona Sunshine」の開発当時に苦労した経験から,「Skyworld」ではローディングのないゲームを追求するためのツールを自分で作成し,90fpsという制約の範囲内で部分的にローディングしていくシステムを開発したという。
このような“匠の技”が随所に凝らされた「Skyworld」は,現在Oculus HomeやSteamで25%オフの価格で購入できるプレオーダーを受け付けている。日本語表示や音声に対応しているので,気になる人はプレイしてみるといいだろう。
「Skyworld」公式サイト
- 関連タイトル:
Skyworld
- この記事のURL: