『Demolition Derby』:モバイルゲーム向け Unity のケーススタディ
3 名のスタッフで運営しているオランダのインディースタジオ、Destruction Crew は、スタントカーレースのクラッシュ、カオス、騒乱を愛するあまり、それを再現したモバイルゲームを制作し、ヒットへと導きました。
-
ゲーム
リアルタイムのオンラインマルチプレイヤークラッシュ・レーシングアーケードゲーム『Demolition Derby』
-
目標
プレイヤーに支持される上質なマルチプレイヤー体験の創出
-
プラットフォーム
iOS、Android、Android 対応 VR(各種ヘッドセット)、Windows ストアアプリ
-
チームメンバー
3 人
-
所在地
オランダ、エメン
超人気のマルチプレイヤー
『Demolition Derby』は Unity のマルチプレイヤー機能、Asset Store、マルチプラットフォームサポートのおかげで 1,500 万回を超えるダウンロード数を達成し、大ヒットを収めたゲームです。
その成果は以下のとおりです。
- Unity Multiplayer を利用して 200 人から 5,000 人の同時接続ユーザーに対応
- Asset Store を活用して自動車の作成にかかる期間を数か月から数週間に短縮
- 1,500 万回以上のダウンロード数を獲得
- Unite Europe 2017 の「Made with Unity Showcase」で紹介される
迷わず選んだマルチプレイヤー
コンテンツを制作するには、まず自分が好きなものや詳しいものを題材にするとよいと言われます。Destruction Crew は、まさにそれを実行した会社です。
Destruction Crew のリードプログラマー兼共同創業者である Steven Derks 氏は次のように語っています。「私たちは昔から、スピード感と破壊的なアクションが楽しめる、エキサイティングなカーレースゲームが大好きなのですが、そのようなゲームを自分たちで制作し、独自のアイデアを盛り込むことで、どんなゲームが出来上がるか試してみたいと思っていたんです。とにかく、全員破壊ものが大好きなんです。」
この種のダイナミックなゲームの場合、プレイヤー同士のオンライン対戦をプレイヤーが望むことは間違いないと Destruction Crew では考えていました。
「AI(人工知能)やボットとの対戦プレイも楽しいですが、リアルのプレイヤーとの対戦は、その何倍も楽しいものです。実際、誰かの車にリアルタイムで激突した瞬間には、『やってやった!』という気持ちになりますよね。私たちは Unity Multiplayer を使うことで、そのようなリッチな体験を簡単に作り出すことができました。」
ただし、ネットワークごしの物理演算や、同時ユーザー数の制限、さらに収益化プランの必要性などといった問題を考えると、リソースの限られている 3 人だけのチームにとっては、難しい課題も残っていました。そこで Unity は、それらの課題を克服するのに役立つ多数の機能を提供しました。
ネットワークごしの物理演算がもたらす優れたユーザー体験
Destruction Crew が優れたオンラインマルチプレイヤー体験を実現できた要因の 1 つは、Unity の API を介したネットワーク上の物理演算です。これによって物理演算のシミュレーションがしやすくなり、どのクライアントでも差を感じさせない物理演算処理が実現されました。
Destruction Crew では、Unity のデフォルトを使用せず、カスタムの NetworkTransform を作成しました。設計からコーディング、テストまでの作業は、約 1 か月で完了しました。
「Unity のネットワークシリアライゼーションのおかげで、物理演算のシミュレーションに必要なすべての物理データを、すべてのクライアント間で簡単に送信できるようになりました。ネットワーク API の実装が非常にシンブルなので、ネットワーク上の物理演算を問題なく実装することができたんです。これは、マルチプレイヤーのモバイルカーゲームにとっては非常に重要なことでした」(Derks 氏)。
Destruction Crew が高く評価したもう 1 つのマルチプレイヤー機能として、プライベートルームを作る機能があります。
「Unity の場合、この機能はパスワードを設定するだけで基本的に準備完了です。友人と一緒にプレイしたいときにはプライベートルームを作り、必要に応じてパスワードによる保護を設定すれば、それだけでプレイを開始できます」(Derks 氏)。
プレイヤー数の増加に応じたスケール拡張
リリース前、Destruction Crew ではマルチプレイヤー版がプレイヤーに受け入れられるかどうかにさえ気をもんでいました。しかし、実際にリリースしてみると、彼らは予想以上の人気に驚くことになったのです。
「最初は同時接続数(CCU)を 200 人に設定していました。それで十分だろうと思っていたんですが、念のため、CCU の上限を 1000 まで引き上げたんです。ところが 1 週間もしないうちに、ユーザー数は最大 5000 人にまで増えていました。これは設定した上限をはるかに超えるものでしたが、Unity チームのおかげで、上限の引き上げも簡単にできました。バックエンドが柔軟なので、何の問題もなく 5000 CCU にまで増強することができたんです」(Derks 氏)。
Asset Store の車両をアグレッシブに活用
デモリッションダービーを好むプレイヤーは、たいていは車好きでもあります。そこでプレイヤーが乗りたくなるような車を豊富に揃えておくことが重要でした。しかし Destruction Crew のように小規模なチームでは、すべての車を一から構築するとなると、時間がかかってしまいます。
「私たちはプレイヤーが選べる車をたくさん用意したかったのですが、それらを一から作るにはリソースが不足していました」と Destruction Crew のゲームデザイナーにして共同創業者である Nick Timmer 氏は言います。
その解決策は、Unity Asset Store で車両パックを購入し、カスタムテクスチャとカスタムスキンを適用できるように、自分たちのスタイルに合わせて UV マッピングテクスチャを変更するというものでした。
「Asset Store はこの上なく重要でした。車を一から作るなんて、想像すらできません。それをやっていたら数週間ではなく数か月はかかっていたでしょう」と Timmer 氏は言います。
売り物になる車を制作
車がこのゲームの重要な要素であることを考慮し、Destruction Crew では、プレイヤーが新しいバンパーや車輪で車をカスタマイズできるようにしようと決めました。そのうえで、彼らはさらにもう一歩踏み込み、カスタマイズそのものを収益化プランに組み込むことにしました。
「通常、プレイヤーはゲームで一定のレベルを達成した場合にのみ、自分の車をカスタマイズすることができますが、私たちはブラックマーケットを導入するのがよいと考えたんです。これは、一定レベルに達していないプレイヤーでも、アプリ内課金 (IAP)としてカスタマイズパーツを購入できる仕組みのことです。」
当初、Destruction Crew は IAP をスムーズに動作させる上でいくつかの課題に直面し、開発が足踏み状態になっていました。しかし、 Unity IAP を実装するとすぐに、すべてが良い方向へと動き始めました。
「以前は他のプラグインを使っていたのですが、使い方が難しく、面倒な問題が頻繁に起こっていたんです。プラットフォームごとにインポートを行っても、さまざまな問題が起こっていました。その点、Unity IAP は実に簡単です。インポートして、いくつかの機能を組み込めば、基本的なことは完了ですからね」(Derks 氏)。
継続的なアップデートとコミュニティのサポート
Destruction Crew では、Unity Multiplayer ソリューションを最初のベータ版から使用していました。初期のバージョンでは当然ながら色々と足りない機能もありましたが、 Unity Pro では頻繁な更新が行なわれていたため、ゲームを開発する中で特に問題は生じませんでした。
「必要な機能が欠けていても、多くの場合は文字通り翌日に Unity の更新が実施され、その機能が提供されました」(Derks 氏)。
ゲームの開発中には、機能とは別の課題にぶつかることも当然ながらありました。しかし、そのような場合でも、彼らは常に Unity コミュニティ内で解決法を見つけることができました。
「Unity コミュニティは問題の解決に大いに役立ちます。いつも本当に助けられていました。私たちはいつも、Stack Overflow と Unity フォーラムを活用していたのですが、10 回中 9 回は解決策が見つかりました。」
どのプラットフォームでも、どのテクノロジーでも
『Demolition Derby Multiplayer』は当初 iOS、Android、Windows ストアアプリでリリースされましたが、Destruction Crew は各プラットフォームへの移植がとても簡単だったと感じています。
「設定をほんの少し、たとえばテクスチャやメッシュ圧縮の設定を変更するだけで済みました。大部分のものはビルドすればすぐに動きました」
VR は、市場での存在感を増しつつあり、『Demolition Derby Multiplayer』の新たなプラットフォーム候補として有望でした。そして、その VR バージョンの制作は実に簡単でした。
「それまで私たちはモバイルゲームしか作っていませんでしたが、どんな新しいテクノロジーが出てきてもそれをサポートしてくれるのも、Unity の素晴らしいところです。私たちがモバイルゲームの VR バージョンを作るときでも、プラグインをほんの数個追加するだけで準備完了なのです」と Timmer 氏は言います。