ゲームにおける品質保証(QA)テストの基本
世界中で約32億人が、PC、家庭用ゲーム機、モバイルデバイスなどのさまざまなプラットフォームでゲームをプレイしています。また、ゲームには、FPS(一人称シューティングゲーム)、RTS(リアルタイムストラテジーゲーム)、レーシングゲーム、プラットフォームゲームなどさまざまなジャンルがあり、ゲーマーは幅広い選択肢の中から、プレイしたいプラットフォームやゲームを選ぶことができます。しかし、こうした多種多様なゲームのすべてに共通することが1つあります。不具合やバグがあるとゲーム本来の魅力が薄れるということです。
ここ数年、画期的なゲームが続けざまにリリースされています。ゲームの概念を変え、私たちが知る世界と、実現しようとしている世界の境界をなくしていくことを想定したゲームです。しかし、ゲーム自体の魅力が十分に発揮されないために、売上に苦戦を強いられています。ベストセラー小説にも匹敵する精緻なナラティブを体験できるシングルプレイヤーゲームでも、超大作映画も顔負けの壮大な世界観のマルチプレイヤーゲームでも、自らの在り方をじっくりと考えたくなるような小規模なインディーズアドベンチャーゲームでも、バグや不具合のないゲームはありません。
では、ゲームの開発元や販売元はこうした課題にどのように対処しているのでしょうか。シンプルな答えは品質保証(QA)ですが、これには想像以上に多くの作業が伴います。ゲームがたどる(少なくともたどるべき)主なQAの種類を簡単にご紹介します。
#1 機能QAテスト
機能QAチームの役割は、ユーザーエクスペリエンスに影響する機能上のバグを発見することです。バグが発見されたら開発チームに報告します。このプロセスは負荷の高い作業になります。テスターはゲームのすべての要素(ゲームの機能やメニュー、音声、アイテムなど)と、マップの隅々までをテストし、すべてが想定通り動くことを確認しなければなりません。
プレイヤーは、ゲームをプレイして、確認した内容を報告することがテストであると考えているかもしれません。これは間違いではありません。しかし実際には、ゲームテスターは既存の枠にとらわれず、自らの経験をテストとゲームの理解に生かし、複雑な問題や一般的ではない問題を見つける必要もあります。マップ内の立入禁止区域に入る手段を探し、回復アイテムの効果が説明通りであるかどうかを確かめることと似ているかもしれません。
問題が見つかれば、テストチームはバグレポートを作成します。レポートには、開発チームが問題を理解し、修正するために必要な情報をすべて盛り込みます。レポートには、正しくない挙動や、考えられる正しい挙動、バグを再現する方法、追加説明、参考資料(スクリーンショット、動画、ゲームのログなど)も含まれます。
しかし、どれほどテストしても、バグをすべて発見することは不可能です。ゲームそのものが驚くほど複雑なソフトウェアの集合体であり、その一つ一つがプレイヤーからの数え切れないほどの入力情報を受け取るためです。プレイヤーは、驚きの発想でゲームの限界を試すようなプレイをすることがあります。
機能QAの品質保証においては、すべてのバグを発見するのではなく、ゲームの機能的な健全性が十分なレベルに達しているというポイントに到達することが一般的な目標となります。到達するべきポイントを制作チームや開発チームが設定する場合もあります。
#2 ローカライゼーションQAテスト
ローカライゼーションQAチームは、ゲームの言語的な側面に注目し、翻訳されたテキストや音声、アートアセットのテストを行います。機能QAと同様に、目標はすべての要素が想定通り動作し、どの言語でプレイするユーザーでも質の高いユーザーエクスペリエンスを得られるようにすることです。
ローカライズテキストに関する問題は、ほとんどの場合、言語的な問題と非言語的な問題のいずれかに分類できます。
1. 言語的な問題は翻訳作業に起因します。文法やスペルミス、タイプミス、誤訳、用語の不統一、文脈との不整合、訳抜けなどです。
こうした問題は、テストチームでも、言語スペシャリストでも、開発チームでも対処することができます。ゲームで使用されるテキストが格納されているファイルをアップデートするだけで、修正できる場合が多いためです。ファイルには、識別子(ゲームで画面上の特定の位置にどの文字列を表示するかを識別するために用いられる)、元の言語、翻訳済み言語が含まれています。それ以外にも、前後の文脈や話者の名前などの情報が含まれている場合もあります。このように分類されている情報は通常、文字列と呼ばれます。
2. 非言語的な問題は、もう少し複雑です。問題の原因が、翻訳に関わる要素よりも、翻訳されたテキストがゲームでどう処理されるかという部分に関わるためです。こうした問題は、ローカライゼーションQAチームでは修正できないため、開発チームが対処する必要があります。したがって、バグとして報告しなければなりません。機能バグの場合と同様に、ローカライゼーションバグには、すべての関連情報、さらに問題の影響を受けるそれぞれの言語が含まれます。
ローカライゼーションの問題は、一筋縄では行かない場合があります。たとえば、ゲーム内で表示される未翻訳の英語テキストは、訳抜けという言語的な問題である場合も、文字列の処理を誤ったことに起因する非言語的な問題である場合も考えられます。ローカライゼーションチームは、対応しているバグがどちらの種類に該当するかを特定する必要があります。そのために、まずテキストファイルの内容を確認し、その種類に応じて翻訳を追加または依頼するか、もしくは不具合としてバグレポートを作成するなどの対応を進めます。
開発元によっては、吹き替え音声(会話や雄叫びの音声など)やアート(画像、標識など)といった、テキスト以外のローカライズデータについても確認対象とする場合があり、このようなデータも徹底的にテストする必要があります。会話をテストする場合、QAテストチームは音声の内容が正確であるだけでなく、文脈に合った自然な発話になっていることも確認しなければなりません。
ローカライゼーションQAは、すべてのユーザーが開発時に想定されたとおりにゲームタイトルを楽しめるようにするうえで、QAプロセスにおいてきわめて重要な役割を担います。ローカライゼーションの質が悪ければ、プレイヤーの集中を妨げ、場合によっては混乱やフラストレーションを生むことになるため、機能QAの質の問題と同じように深刻な結果を招く可能性があります。
#3. 認証QAテスト
ゲームが家庭用ゲーム機向けにリリースされる前に、必ず各ゲーム機メーカーからリリース承認を受けたことを証明するステッカーを取得しなければなりません。ゲーム機メーカーは証明書を発行するプロセスの一貫として、ゲームタイトルの評価とテストを行います。このテストでは、すべての機能が包括的にテストされ、すべての要件に対応していることを保証します。たとえば、コントローラーの接続が途切れたときのゲームの反応(例:ユーザーにコントローラーを接続するよう促すメッセージを表示する)や、オーディオ出力先が変更されたときの反応(例:コントローラーにヘッドセットを挿すよう促す)などがテストされます。
認証QAチームは、ゲームタイトルがこうした認証プロセスを通過できるよう、複雑さの度合いがそれぞれ異なるプラットフォームごとに無数のテストケースを繰り返し、合格と不合格を判定します。不合格だったテストケースは開発チームに報告されます。機能やローカライゼーションのバグと違い、認証QAで発見されたすべてのバグは、どのような開発チームでも最大限に深刻かつ優先順位の高いものとして扱われます。認証プロセスに不合格となれば、現状のままでは、そのプラットフォーム向けにタイトルをリリースできなくなるためです。認証で不合格になることの影響は大きく、再申請の費用が必要になるだけでなく、マーケティングに悪影響が生じたり、製品のリリース予定に間に合わなくなったりする可能性も生じます。
#4 互換性QAテスト
PCやモバイルデバイス向けゲームを開発する場合、開発者は膨大な数のPCの構成(プロセッサ、GPUなど)を考慮しなければなりません。また、現在展開されているデバイス、特にターゲットとなる市場で使われているデバイスについては、できるだけ多くのデバイスと構成でゲームが問題なく動作することを確認する必要があります。開発元は、まずゲームがサポートするデバイスの種類を定義し、続いて、そうしたデバイス向けにゲームを最適化します。この最適化のプロセスの一部にQAチームが関わります。サポート対象のデバイスやPCの構成を用いてゲームをテストし、全体的なパフォーマンスを測定したり、開発チームが定義した最小要件と突き合わせたりします。
QAチームはテストしたデバイスの詳細を開発チームにフィードバックすることもあります。これにより、開発チームは十分な情報に基づいて、デバイスの種別ごとに開発リソースをどう配分するかや、場合によって、サポートを強化するまたはサポート対象外とする特定の種類のデバイスや構成について判断できるようになります。このようにして、開発者はPCでゲームの最小要件や推奨設定に対応し、ゲームのサポート対象となるモバイルデバイスを決定します。
ユーザーエクスペリエンス(UX)リサーチ
ゲームの制作チームは、開発プロセスの進行中に、ゲームについて偏りのないフィードバックを得たいと考える場合があります。プレイヤーが想定通りのゲーム体験を得られるよう、ゲームプレイや機能を微調整するためです。このような場合に、UXリサーチチームが役割を果たします。
プレイテストにアプローチする方法は複数ありますが、このプロセスは通常、まずはUXチームと制作または開発チームが協力してプレイテストの目標を定め、対応するテストを設計することから始まります。プレイテストを担当するチームも、要件に合わせて編成される必要があります。年齢、性別、職業、テスト対象のゲームタイトルやジャンルのプレイ経験まで、さまざまな基準を満たすチームです。
テストの設計が完了すると、プレイテスト中、プレイヤーの行動は記録されます。UXチームが記録を分析し、開発チームに重要なデータを提供します。こうしたリサーチにはいくつかの手法があります。1対1のインタビューや、複数人でのディスカッション、アンケート、あるいは、行動を観察して分析するという方法もあります。
プレイテストの終了後、UXリサーチチームはデータを分析し、必要に応じてテスト結果を提示します。たとえば、UXリサーチチームは、複数の種類の結果の中から、詳細な分析や統計チャートを提供する場合があります。制作チームはそのデータを使用し、ゲームに必要な変更を加え、通常は期待通りの結果が出るまで、さらなるUXリサーチを繰り返します。
トランスパーフェクトのゲームQAテスト
ご紹介したQAテストサービスはすべて、トランスパーフェクトのゲームソリューションで提供されています。トランスパーフェクトは、海外に展開するゲームのテスト、品質保証などのサービスで、ニーズに対応するお手伝いをします。
トランスパーフェクトのゲーム向けQAサービスの詳細については、tokyosales@transperfect.comまでお問い合わせください。