『龍が如く』シリーズの開発環境では、なんと「処理落ちヒートマップ」や「イベント干渉監視ツール」などが用意されている。テスト自動化チームが取り組む草の根活動
『龍が如く』シリーズにおいては、テスト自動化が開発のフローの中に組み込まれている。そうした試みは、どのようなスタッフがどのように進めているのだろうか。

『龍が如く』シリーズにおいては、テスト自動化が開発のフローの中に組み込まれている。バグの発見の自動化と、バグの修正をできるだけ簡単に行えるようにする試みだ。近年では、『龍が如く』シリーズに留まらず、『スーパーモンキーボール』においてもテスト自動化の取り組みが進められている。内製のドラゴンエンジンをメインに使われていたテスト自動化は、UnityやUnreal Engineでも使用されているわけだ。
そうした試みは、どのようなスタッフがどのように進めているのだろうか。今回はセガのクオリティエンジニア(テスト自動化を含めた品質に関わるあらゆる問題を技術で解決するエンジニア)の阪上直樹氏・並木勇人氏・桑原和人氏に話を訊いた。別記事では、テスト自動化そのものの仕組みや実績について語ってもらっているので、そちらもチェックしてほしい。
──研究の甲斐あり、龍が如くチームでのテスト自動化はある程度のレベルまで到達している印象ですが、最近においてはどのような進化を遂げているのでしょうか。
桑原氏:
テスト自動化の中でも、「テスト結果の確認」に関して充実させています。たとえば、『龍が如く8』では情報のマップ可視化に力を入れました。もともと『JUDGE EYES:死神の遺言』(ジャッジアイズ)で実装した「ドローンレースのVRAM(ビデオメモリ)の使用率をヒートマップとして確認できる機能」を拡張しています。ドローンレースは空で繰り広げられるのでオブジェクトの表示数も増えVRAMを使いがちで、処理落ちやクラッシュの原因になります。そうした状況がすぐわかるようにヒートマップを作ったわけです。その機能を拡張させています。
たとえば、さまざまな情報のログやキャラクターの配置情報、道端に落ちているアイテムなども可視化できるようにしました。マップで俯瞰して見ることで、エラーになりそうな箇所の絞り込みや、エラーが発生したときの確認を行うことが容易になりました。情報をマップに表示することで「ハワイのここらへんでエラーが集中してるな……」ということが一目でわかります。

──技術的な問題が発生しそうな部分を前もって「見える化」していると。
桑原氏:
イベントの有効距離やキャラクターの配置によって「メインシナリオとサブシナリオが近いために不具合を起こしてしまう」問題も、「可視化」することで解決しやすくなりました。
──大規模開発だと、客観視なデータとして確認できることも重要そうです。
阪上氏:
こうしたデータは、リアルタイムで検索できるものと、毎日一回だけ更新するものの2つがあります。特に後者は、VRAMヒートマップを見て「今日は異常がないな」とか、バグを直したら次の日確認して「よかった、解決している」というように、作業の進捗状況をみんなで共有して確認できるメリットは大きいかなと思います。
──この「問題が起こる前に見える化」システムの開発は全般的に桑原さんが担当したのでしょうか。
阪上氏:
原型となるものは自分が作ったんですが、最初は画像だけだったんです。クリックをすると詳細情報が出てくる機能などを拡張していってくれたのは桑原君ですね。
──このデータ、ユーザーとしても見てるだけで面白いです。
一同:
(笑)
桑原氏:
いろんなログや配置データを一気に出すなど、ゲーム開発をメタ的な視点で見ることはあまりないので面白いですね。
──今度は『モンキーボール』について教えてください。『スーパーモンキーボール バナナランブル』のテスト自動化も大変だったのでは。
並木氏:
『モンキーボール』へのテスト自動化の導入にあたっては、開発環境の土台部分にバリエーションを増やして、新しいゲームエンジン(Unity)やプラットフォームに対応させるというのがメインの作業でした。
そこでちょっとした好奇心からUnityを触ってみたらプロファイリング機能を発見して、それを使えばプログラム上からデータを外部に出力できることを見つけたんです。テスト結果のログをテスト自動化チームに送って可視化するところまではできているので、この機能を使ってパフォーマンス情報も可視化してしまおうと考えまして。
おかげで「このステージだとフレームレートが低いぞ」とか、「こういう遊び方するとテクスチャのメモリがどんどん増えてリークしているぞ」、「この場面ではモデルのメモリが圧迫しているぞ」という情報が可視化されて、改善作業がかなりスムーズになりましたね。早い段階から気持ちよく遊べるような状態に調整できるメリットがありました。

──桑原さんが作られた「可視化ツール」のUnity・『モンキーボール』版ですね。
並木氏:
そうなんです。この機能がなかったころはUnityのエディターの立ち上げ、ゲームの立ち上げ、テストの開始、テストの結果を確認、テスト結果の共有、各自確認、という工程を毎回手動でやることになっていたので苦労していました。それを全部自動化できました。
テストの効率がものすごくよくなった結果、1日1ステージの状況を確認するので精一杯だった作業が一晩で全ステージ分を終えられるぐらいになりました。ほかにも、手動での作業にかなり苦労していた人もいたんですが、テスト自動化の導入後には確認作業が簡単になったことからテスト自動化を導入してよかったと感じてくれていたようでした。この機能は『龍が如く8』の開発と並行して作っていたものなので、『龍が如く8』の方で桑原が作っていた可視化マップと機能を合体させたいというのが今後の野望です(笑)
──「自動でテストしよう」だけでなく「問題が起きやすいポイントを特定しておいてバグを元からなくそう」という発想が、どちらのタイトルにもあったんですね。
阪上氏:
テスト自動化にはバグを早く自動で見つけてくれるという側面ももちろんあるんですが、予防的な措置として果たす役割がすごく大きいですね。
──阪上さんのテスト自動化啓蒙がセガのエンジニアに広がりつつあると。そうであっても、桑原さんと並木さんで、スキルが伸びる方向が違うのが面白い。
並木氏:
根底には同じ思想をもっているんですが、その先に伸びるところが人によって違う印象ですね。私の場合は土台部分の開発やプログラムの最適化、汎用化が好きなので、今回は対応プラットフォームの追加や新しいゲームエンジンの対応などを担当しました。
桑原氏:
自分の場合はツールの新しい機能を発見してそれを実用化したり、いろいろなツールの組み合わせを考えるのが好きですね。新しいツールは出来ることが一気に広がるので楽しいです。もともとあったものと新しい物を組み合わせてまったく別のことができるようになると面白いと感じます。
阪上氏:
クオリティエンジニアは、基礎部分はチームメンバー全員が同じようにできるようにした上で、そこから先はそれぞれがやりたいことを伸ばしていくという形式を採っています。『モンキーボール』だったらゲームのアクション部分の自動プレイが難しいとか、『龍が如く』シリーズだったらデータやバリエーションが多いとか、チームごとに違う課題や問題点があるんです。こうした問題点を見つけて自分なりに解釈、解決できる方法を見つけて実装するために、それぞれのやりたいことを伸ばしているという感じですね。
──問題の解決にあたって、阪上さんから「こういう方法で解決しなさい」というようなミクロな指示はないということですか。
阪上氏:
そういう指示はしませんね。むしろ自律的に動けるようにサポートするようにしています。もともとテスト自動化はトップダウンで始まったものではなく、ボトムアップで現場が欲しいからやるものだったので。今でも現場がやりたいと感じたことの下支えをするようなイメージです。求められているレベルに足りていないところはもちろん指摘しますが、基本的には基礎ができるようになったら本人たちのやり方に任せています。
──皆さん楽しそうにお話されていますが、実際は楽しいことだけではないですよね。
阪上氏:
大変なときもあります(笑)
一同:
(笑)

阪上氏:
トラブルを解決するのが仕事なので、そういう意味では飽きがこなくて楽しいですよね。シリーズを重ねていても、初めて起こるような問題もあるので。『龍が如く6 命の詩。』の時はクオリティエンジニアが自分しかいなかったので1人で考えていましたが、最近はトラブルの解決方法をクオリティエンジニア同士で相談しながら決められるので楽しいなと。
──いろんなトラブルとの遭遇は経験されたと思いますが、クオリティエンジニアとして初めて見る技術トラブルが起こったときはやっぱり不安になるものなんでしょうか。それともちょっとテンションが上がったり?
阪上氏:
……ワクワク?
並木氏:
半々ですかね?
──ワクワクする気持ちはあるんですね(笑)
並木氏:
ワクワクはしますね。
阪上氏:
問題が起こったときに、これどう直そうかとか考えると楽しいですよ。
桑原氏:
解決するにもいろいろな手法があるので、どれがいいのか議論したり。
阪上氏:
ただ、成功体験を積んでいるから楽しむ気持ちも生まれるのかなと思いますね。解決するための糸口が全くなかったら怖いと思うので(笑)
テスト自動化は今後どう進化する?
──テスト自動化担当として、みなさんの次なる目標を教えてください。
桑原氏:
テスト自動化によって、プログラム上のエラーはこれまでより容易に検出できるようになりました。ただ、見た目の不具合や音の不具合はまだテスト自動化では対応できないところなので、次はそこを解決したいですね。最近だと大規模言語モデルを利用した画像が認識できるAIも出てきているので、そういうものを活かせないかなと考えている段階です。
阪上氏:
毎回桑原君の作業を見に行く度に新しく見つけた大規模言語モデルのテストをしていたり、曖昧検索を作ったり、いろいろとやっています(笑)
──並木さんは次の目標などはありますか。
並木氏:
今はまだまだセガ内のテスト自動化環境が、ドラゴンエンジン版とUnreal Engine版、Unity版の3つに別れてしまっている状態なんです。その影響で、ドラゴンエンジン版で作ったものをUnreal Engine版やUnity版に導入したり、逆にUnreal Engine版やUnity版で生まれたものをドラゴンエンジン版にバックポートする作業が頻繁にあります。そういう場合に、まだまだプログラムをゲームエンジンごとに作っているなと感じるんです。
中身は同じようなものなのに別の手法で作ってしまっているといった課題がまだまだあるので、なるべく手法を統合して、どのゲームエンジンでも同じようなツールや仕組みでテスト自動化環境が作れるところまで汎用化したいなと考えています。今のうちにきちんと整理しておけば、今後新しいゲームエンジンが出た時にもすぐに取り入れられますしね。
──ゲームエンジンが違うゆえに、同じものを別の手法で作り直す必要があり、もったいないと。
並木氏:
プログラムの土台部分のシステムはゲームエンジンごとに違ったりしますが、ゲームの開発に必要になることは、どこのプロジェクトでも同じだったりするんですよ。昨年の講演では「テスト自動化、Unityではこうしました、Unreal Engineではこうしました」という話をさせてもらったんですけど、実はこれを1つのプログラムに統合できるんじゃないかと考えているんです。
開発用のツールも、現在はそれぞれの用途に応じたものが1つ1つタイトルごとにカスタマイズされてるんですが、たとえばこれを1個にまとめた上で各タイトル用のプラグインを用いて拡張できるようにした方が便利になるんじゃないかと個人的に考えています。そういった部分の整備を重ねてどの開発環境でも使えますよというツールを作って、最終的には“「龍が如くスタジオ」のテスト自動化ツール”という認識を外したいです。テスト自動化ツールの汎用パッケージ化ですね。

──汎用化すれば、さらに強くなりますね。
阪上氏:
今までは、テスト自動化の仕組みにどんどん機能を追加して、より多くの環境で動かせるようにすることに注力してきました。。『龍が如く7 光と闇の行方』の時にテスト自動化のサイクルを作って、そのあと『LOST JUDGMENT:裁かれざる記憶』でマルチプラットフォームに対応させて。その次にマルチゲームエンジンに対応とステップを重ねてきて、並木君が言うような汎用化が次のゴールかなと。ただそれを目指してツールを汎用化していく場合、どうしても汎用性のために各機能を削ぎ落とすこともあり、そうなるとそれ単体では『龍が如く』シリーズには機能が足りなかったり、『モンキーボール』だとクリアが出来なかったりという状況になってしまうんです。
私は今、開発技術部でほかのセガタイトルへのテスト自動化の導入を進めているんですが、特定タイトルに特化した問題への対処は、汎用化されたシステムがあるだけでは難しく、クオリティエンジニアリングチームのメンバーのきめ細かいサポートやカスタマイズが必要になってきます。「龍が如くスタジオ」はずっとクオリティエンジニアの育成に力を入れてきた分、そういった人材が多くいるのですが、ほかの部署では、テスト自動化の導入と並行して、クオリティエンジニアの業務の説明や人材育成も同時に進める必要性を感じています。並木君や桑原君のような優秀な人材を増やしていくための、啓蒙と教育ですね。
──個別のタイトルに向けてではなく、セガ全体に広めているんでしょうか。
阪上氏:
最終的にはそうなのですが、そのために今は個別のタイトルのチームにガッツリと携わってそこで伝えていくという形で活動しています。今いる開発技術部では、私以外にもテスト自動化に関わっているメンバーがいて、チームで動いているんです。そのメンバーに汎用化に向けた開発を任せながら、自分は現場に行って啓蒙活動をメインにしているイメージです。ツールを渡しただけではエラーの見方やテストの書き方などがわからないので、うまく活用されないという問題がどうしても出てきてしまいます。そこでセガのいろんな部署やチームに出向いて、現場で作業している感じです。
クオリティエンジニアの社内の立ち位置はどうなのか?
──ところで、クオリティエンジニアにはどのようなキャリアパスでなることが多いんですか。
阪上氏:
クオリティエンジニアになるには、まずはゲームプログラマーとして経験を積んでほしいです。ゲームを作る仕組みを知らないまま、知識がない状態でおこなうにはテスト自動化はなかなか難しい仕事です。通常のゲーム開発の経験を積んだ上でクオリティエンジニアになってもらうという形はとても多いです。
──キャリアモデルとして、クオリティエンジニアはプログラマーからの次のステップの選択肢の1つになっているんですね。ディレクターやマネージャーとはまた違うステップと。
阪上氏:
そうなっていくように今まさに活動しています(笑)面白いと思ってもらえるような啓蒙がいるかなと。だから、自分が日頃講演などで広く発表するのも、テスト自動化にどれぐらいの意義があるかを伝えたくて。資料に数字を出しているのもアピールの面が強いです。「テスト自動化が大事だよ」という主張を長年続けてきたことで認知度は十分にありますし、並行で開発しているタイトルの増加もあってどんどんテスト自動化に人をアサインしていこうという流れにはなってきているんじゃないかと感じています。
ちなみにプログラマーがクオリティエンジニアになることが多いと話しましたが、最近ではQAテスターからもクオリティエンジニアになってもらう動きも出てきています。そうした人がどう伸びるかも注目しています。
──草の根的な活動が実を結んだんですね。今はテスト自動化も業務の1つとして開発現場に認められている印象ですが、以前はどんな評価を受けていましたか。
阪上氏:
以前からも応援してもらっていました。セガ全体の傾向なのかもしれませんが、チャレンジしている人を応援するムードが強いのかなと思います。きちんと成果を出したら「じゃあ次もお願い」というような感じでした。
『龍が如く6 命の詩。』でのテスト自動化の時は、開発メンバーそれぞれのPCの夜間の空き時間を使って自動化されたプログラムを動かす形式だったんです。そうなると夜間PCを別のことに使いたい人がいる場合、重要なテストが回せないという状況になってしまうことがありました。その時にテスト専用のマシンを増やせないかディレクターに相談に行ったんですが、予算や納品スケジュールの都合が合わなくて。そこで余剰のPCをかき集めてきて、それを使って成果を出したんです。そういったアピールを少しずつ積み重ねていって信用と実績を築いていきました。結果として、今は専用のマシンが150台ぐらいある状態です。
──各タイトルのテスト自動化にあたって、どれぐらいの規模の人数が関わっていますか。
阪上氏:
「龍が如くスタジオ」でいうと、プロジェクト1つにリーダー1人をアサインしています。何十人もいるという感じではなく、少数精鋭でやっていますね。ただクオリティエンジニアリングチーム内の横の連携はすごく強いので、前提としてはクオリティエンジニアリングチームの一員として存在していて、そこからそれぞれのプロジェクトに専任でリーダーとして派遣されるようなイメージです。プロジェクトの立ち上げで誰かが忙しいときには、ほかのメンバーが業務を手伝ってくれるようなこともあります。複数人が常に動いている状態ですね。
──それぞれがプロジェクトに出向して、チーム内の横のつながりで知見を共有しあうような仕組みがあると。
阪上氏:
どこかのプロジェクトでツールの不具合が起きたらすぐに情報が共有されて「これはヤバいからすべてのプロジェクトで直そう」とみんなで動いたり、桑原君などが新しい機能を実装したら「うちにも」とプログラムをもらって更新したり、という感じですね。
──エンジニアリング遊撃部隊とでも呼ぶべきでしょうか、ちょっと特殊な立ち位置での仕事なんですね。
阪上氏:
基本的には、アサインされたエンジニアはそのプロジェクトの専任メンバーとして業務をおこなうことになるんですが、開発チームから見るとテスト自動化の窓口がわかりやすいというメリットがありますね。テスト自動化の業務自体はプロジェクト内のほかの人がやっていることもあるんですが、なにかあったときに相談しやすい人がいることが大事なので。クオリティエンジニアは重要な立ち位置なので、プロジェクトのほぼ真ん中の席にいるんですよ。ディレクターとかが「ちょっとこの機能が欲しいんだけど」と相談しやすい位置に(笑)
──プロジェクト内で重要視されているんですね。
並木氏:
個別に相談されるケースっていうのはすごく多いですね。ほかのセクションや職種に比べると、ユニークで貴重に見られているのかなと感じます。
──そういった業務内容だと、コミュニケーション能力も大事になってきますよね。
阪上氏:
話しかけやすい、相談しやすいというのは大事な要素だと思っていますね。プロジェクト全体の健康度を俯瞰していなければいけないので、気軽に話しかけられて、「この機能使いづらいんだよね」なども打ち明けてもらいやすいことも重要です。相談してもらっても、そのプロジェクトの期間内に対応が間に合わないこともありますが、プロジェクトの終了時に毎回振り返りを行って、今回できなかったことは次やろうということでどんどん改善していっています。
桑原氏:
「龍が如くスタジオ」でプログラマーとして開発に携わっていたときも、プロジェクト内の色々な人とつながっておくことの大事さは感じていました。

──伊東豊さん(「龍が如くスタジオ」の技術責任者)も以前、プログラマーは「相談されやすいスタンスでいなさい」とチームに教えると話していました(関連記事)。その文化の浸透を感じます。
クオリティエンジニアを育てていくために
──ちなみにですが、クオリティエンジニアの定常業務を教えてください。どんな毎日を過ごすのでしょうか。
並木氏:
クオリティエンジニアの業務にはフェーズが2つありまして、前半はゲーム開発に必要な機能を揃えるフェーズ、後半は出来上がったものをくみ上げて開発やテストの環境を構築して、実際の運用を始めたりするフェーズですね。
前半はゲームの新しい要素に対応するために必要な機能を洗い出して、実際に新しく必要な機能を作っていくという工程です。『龍が如く8』でいうと新マップであるハワイ、『モンキーボール』だったら新しい物理エンジンなどですね。それらの実装やテストをサポートするための新しい仕組みの組み上げもしつつ、それらと並行して開発に使うツールやサーバーのワークフローも早めに決める必要があります。
後半になるとテスト自動化サイクルの仕組みがある程度出来上がってきて、実際にテストが始まる段階に入ります。このころには使い方を各方面に伝えつつ様子を見守るようなことが増えてきます。「龍が如くスタジオ」のプロジェクトでは、QA部門のテスターにも自動テストを書いてもらう体制を整えているのですが、そこで書いてもらった自動テストの実行方法やエラーの調査方法などを開発メンバーに伝えるなどして、テスト自動化のサイクルをきちんと回す業務がメインになりますね。
阪上氏:
私は、プロジェクトのスケジュールに合わせて、だいたい3つぐらいの段階に分かれるのかなと思っています。まず、「プロジェクトが立ち上がるかも?」という段階ですぐに準備を始めます。開発とテストの環境を構築するのが序盤です。中盤からは、プロジェクトの関係者と必要な機能についての調整を始めます。ここでいう関係者は開発だけではなく、テストやローカライズを行うメンバーも含まれます。例えば、ローカライズの場合は関係者が海外拠点で働いていることが多いので、時差の関係で、朝アメリカの担当の方とミーティングしたあと、夕方にはイギリスの方とミーティング、なんていうこともあります。終盤は、開発やテストのワークフローで効率が悪いところを見つけて改善し、エラーを集計・分析して致命的なものを選別して報告するなど、監視しながら問題点を改善していく作業がメインになっていきます。
──時期によって業務内容がどんどん変わっていきますね。
桑原氏:
自分も基本的には同様のサイクルです。中盤には、エラーが集中していることがわかったらログ分析でマップを作って、エラーが集中しているポイントの報告などもしていました。
──みなさんはそれぞれで好きな工程があったりするんでしょうか。
阪上氏:
自分は割とシステム構築が好きですね。
並木氏:
自分も同じですね。構築して運用が始まって、きちんとプログラムが回りきるまでを見守るのが楽しいです。
──子供を育てるような感覚ですね。
阪上氏:
後半のテストを見守るフェーズも好きで、自動テストの成功率が100%で行けるなと感じた日にはモニターしながらニヤニヤしていることが増えますね(笑)逆に成功率が0%だとやることが増えるので、ぶわーっと忙しくなります。そういう日はもう溜息が出るような状態ですね、どんどん追加で不具合が見つかってくるので。
桑原氏:
自動テストの環境構築を新しいミニゲームや仕様へ対応させる作業は、毎作挑戦的で楽しいです。
──CEDEC2021で「全自動バグ取りシステム」講演がエンジニア部門の最優秀賞を受賞したあと、風向きは変わりましたか。
阪上氏:
ありがたいことに賞をいただいてからは社内での認知も広がりましたし、業界内での認知度もすごく上がったのかなと感じています。テストを自動化するエンジニアが専任でいることは大事だよということはきちんと伝えられたと思っていますね。CEDECなどのカンファレンスで、テスト自動化に関する講演が一昨年ぐらいからとても増えているので、影響は大きかったのかなと感じています。
──同じQAの業種からの相談も増えましたか?
阪上氏:
先ほど、私は過去に少し孤独だったという話をしましたが、各社でテスト自動化をやっている方も少人数でやっていることが多いんです。CEDECの懇親会のはずがお互いの相談が始まったり、講演のあとに聴講者の方とお話できるAsk the Speakerというコーナーが普通に相談会になってしまったり(笑)
並木氏:
お互いがテスト自動化について熟知し合っている中での質疑応答だったので、相談会になってしまったんですよね。
阪上氏:
その方が作っているタイトルを考えながら、お互いに「このゲームだったらこの方がいいんじゃないですかね」というような話をしていましたね。
並木氏:
相当盛り上がってしまって、Ask the Speakerの時間枠を越えてスタッフの方に注意されるまで盛り上がってしまったりして(笑)
阪上氏:
1時間ぐらいずっと話してたよね(笑)
──コミュニティができてきたと。
阪上氏:
私自身、昨年からCEDECに講演側としてだけでなく、開催側としても関わっているのですが、技術的な情報共有のためのコミュニティ作りに貢献していきたいと考えています。今後の課題として、最近ではクオリティエンジニアの育成に関する相談も多いです。『龍が如く』シリーズの場合は、リリースが早くて経験値溜まりやすいという事情があって人材が豊富なんですが、ほかのタイトルではそうとも限らないですし。なにか役に立てたらと。

──コミュニティを作りたいという阪上さんの野望は大枠での目標を達成していると思うんですが、桑原さんと並木さんはそれぞれの野望みたいなものはありますか。
桑原氏:
自分は大学でもともとAIの勉強をしていたこともあって、テスト自動化にもAIを組み込みたいなと考えています。開発支援できるAIシステム、いわゆるAIエージェントを作ってみたいなと思っています。作ったプログラムをテストしておいてと言ったら夜間に動かしてくれたり、エラー内容の解説や対処方法の提案をしてくれたりといったようなものですね。あとはオブジェクトの配置作業などの人の手だと大変な作業の負担をAIの支援で軽くするなど、自分がもう1人いるような環境を作りたいです。
──アシスタントとしてのAIはもう実用化が近いですよね。
桑原氏:
コーディングに関しては、自動でプログラム書くようなシステム自体は続々と出てきているんですが、OpenAI社などが提供している汎用的なモデルにはドラゴンエンジンでのコーディングに関する知識は入っておらず、そのままだと適用できないので、ドラゴンエンジンでのコードの書き方を学習したたモデルを作りたいです。
並木氏:
CEDECでの講演も含めたさまざまな活動の影響もあって、クオリティエンジニアの業務に興味を持ってくれた社内外の若手のエンジニアの方に声をかけられる機会も増えました。そういったことも受けて今後クオリティエンジニアリングの界隈には若手が増えていくと思っているので、そういう若手エンジニアのためにももっと幅広い環境に対応できるようなツールを作ってテスト自動化の間口を広げたいと考えています。
先程から汎用化や最適化、エンジンごとの癖をなくしたいと繰り返し言っているのもそのためで、新しい環境に気軽に導入できて、その上で若い人たちがゴリゴリ新しい物を組み立てられるような土台作りをしていきたいからなんです。それこそ新人が研修で作るようなプログラムも気軽にテストしてエラーを自動で見つけてしまおうと思えるぐらいの手軽さが欲しいと思っているので、今後もっと力を入れていきたいです。
──難しい技術をいろんな人が簡単に扱えるような、いわゆるアクセシビリティを整えるということを、いろんな角度から目指しているんですね。
阪上氏:
特定の個人だけがその技術を使えてしまっている状態からの脱却、いわゆる脱属人化は意識しています。手持ちの情報を発信するのも、もともとはクオリティエンジニアの業務を1人でやっていたときに他のチームや社内のメンバーにも広めたいと思ったのがきっかけでした。複数のプロジェクトを掛け持ちするようになり、これ以上の量の作業を1人でやるのはもう無理だと感じた実体験から、そもそも各プロジェクトにテスト自動化を行える人間が1人以上は必要と気づいて始めたんです。そのまま自分がずっと1人で抱えていたらここまでクオリティエンジニアも増えていかなかったし、もしかしたらここまで発展する前の段階で止まっていたかもしれないと思います。
最終的にはチームの人数が増えたことでトラブル対応の幅が広がりましたし、講演に関してもこちらが情報を提供するだけではなくて、フィードバックで新しいアイデアがいっぱいもらえるんですね。もちろんこちらから提供した情報はどんどん活用してほしいんですけど、自分にも利益が返ってきているという側面もある。技術開発って、1人だけではどうしてもできないことがありますからね。自動テストをスクリプトで書いて、自動的にクリアするというアイデアは講演後にいただいたものですし、さらにそのスクリプトをPythonで書けるようにしてほしいというアイデアは桑原君からもらったものだったりもします。
──集合知によって、どんどん技術が発展していくのを見たいんですね。
阪上氏:
ゲームづくりのコアな部分はもちろん会社として外に出すのが難しいこともあるんですけど、QAテスト自動化を含めたQA(Quality Assurance/品質保証)はみんなが苦労している部分ですし、、比較的情報共有がしやすい分野です。こちらから発信することでほかの会社さんも発信しやすくなっていて、いい循環が出来ていると思います。ただ、うちも負けてはいられない分野ということでもあるので今後も頑張っていきます。

──応援しております。ありがとうございました。
[執筆・編集:Daijiro Akiyama]
[聞き手・編集:Ayuo Kawase]