分散開発で最適化の処理をどう進めるか
このようにベテランの知見を存分に活かしながら、本制作が続けられていった。もっとも、あらゆるプロジェクトがそうであるように、本作もまた風呂敷を広げるよりも、畳む方が難しかった。かみ砕いて言えば、最適化の作業が難航したのだ。
これには2つの要因があった。第一に分散開発だ。特にプログラマーが札幌のスタジオで作業をしていた点が大きかった。ちょっとした打ち合わせでも、全てSkype上で行う必要があるため、確認に手間がかかったのだ。
キャラクターアニメーションの不具合は好例だ。せっかく自分たちがつくったモーションがUnity上ではきちんと反映されていない......その原因がどこにあるのか、アーティスト側からわかりにくいことがあった。
くり返しになるが本作はアクションゲームだ。そのため通常なら「しゃがんで、ジャンプ」といった具合に予備動作が必要になるアクションでも、プレイヤーがボタンを押したらすぐにジャンプさせたい、といった事態が発生する。
「モーションだけを見るとカッコよくても、ゲームにするとモッサリしてしまう、といったことがよくあります。そこで何度か修正していただいたことがありました」(見城氏)。
一方、Maya上で設定したジョイントが、データをUnityで読み込んだときに設定が外れてしまい、それが原因でアニメーションが省略されてしまう......そういった事態もあった。
もっとも、こうした問題は一見しただけでは、何が原因なのかわかりにくい。同じフロアで作業をしていれば、すぐにわかることでも、東京と札幌で距離が離れていると難しかった......コラット・米山氏はこのようにふり返った。
もうひとつの要因は通信対戦に関するものだ。対戦中にラグや処理落ちが発生したとき、ボトルネックを突き止めるのに骨が折れた。プログラムのバグなのか、アセットの仕様なのか、それとも通信ライブラリの問題なのか、1つずつ原因を潰していく作業に迫られたのだ。
開発環境の変化をベテランの知見で乗り越える
本件については、ゲームを開発中に通信ライブラリをアップデートしたことも、原因究明の難易度が上がる要因のひとつになった。「もともと通信ライブラリがアップデートされるのは織り込み済みでした。ただ、こちらの開発が遅れたことで、もろにその影響を受ける形になり、検証が難航しました」(見城氏)。
こうした距離の制約に挫けることなく、無事にゲームをリリースすることができたのは、本プロジェクトにかかわったメンバー全員が「指示待ち」になることなく、自分の頭で考えて、自律的に行動していった点が大きい......。コラットの米山氏と山元氏、そしてスタジオリントの高田氏はそのようにふり返る。
「グラフィックに関しては、わりとおまかせでつくらせてもらいましたね。クライアントに対していちいち許可を取るのではなくて、これでいきましょうと提案をくり返していました。まさに昔ながらのスタイルですね。そのため、指示を待つタイプの人は、この案件には合いませんでした。逆にどんどん前のめりで参加できる人なら、楽しかったと思います」(コラット・米山氏)。
「エフェクトの制作はまさにそんな感じでした。仕様が固まってからつくるのではなく、完全にご提案ベースで進めていきました。ディレクターである見城さんに、こちらからバリエーションを提示して、選んでもらうだけにしたかったんです。考えることが多くて、いろいろな引き出しが求められましたが、やっていて楽しかったです」(スタジオリント・高田氏)。
こうした開発スタイルは日本の家庭用ゲームが世界を席巻していた1990年代では、どこでも一般的に見られた。開発チームの規模は20名程度が良い......そうした経験則が聞かれることもあった。お互いに顔と名前が一致して、密接なコミュニケーションがとれる最大値だからだ。
本作においてもデバッグ期間中はプログラマーが増員されたが、開発のコアメンバーは十数人だった......見城氏はこのように語る。もっとも、開発メンバー全員が同じフロアで顔を揃えることはなかった。1990年代と今とでは、ゲームビジネスを取り巻く環境が大きく変わっているからだ。
その一方でコミュニケーションに関する技術やツールは年々改善が続いている。海外のインディゲーム開発では、国をまたいだ開発者がオンラインで集まり、分散開発を進める例も普通に見られるほどだ。日本でもコロナ禍のもと、こうした開発スタイルがより一般的になっていくはずだ。
モバイルソーシャルゲームからインディゲームへ。スタジオワークからリモートワークへ。そうした環境の変化で生まれるギャップを、ベテランの知見が埋める......様々な意味で今を象徴する開発事例ではないだろうか。