14言語同時リリース!内製ローカライズシステム「LOCO」とRE ENGINEの連携が支える、物量に屈しないワークフロー [RE:2026 2026年10月2日登壇]

1.8K Views

November 13, 26

スライド概要

2026年10月にカプコンが開催した「CAPCOM オープンカンファレンス RE:2026」の講演資料です。

■ 講演映像(再生リスト)
https://www.youtube.com/watch?v=zrKWlIE2RUQ&list=PLD_N6X6tKlCM

profile-image

株式会社カプコンが誇るゲームエンジン「RE ENGINE」を開発している技術研究統括によるカプコン公式アカウントです。 これまでの技術カンファレンスなどで行った講演資料を公開しています。 【CAPCOM オープンカンファレンス プロフェッショナル RE:2023】  https://www.capcom-games.com/coc/2023/ 【CAPCOM オープンカンファレンス RE:2022】  https://www.capcom.co.jp/RE2022/ 【CAPCOM オープンカンファレンス RE:2019】  http://www.capcom.co.jp/RE2019/

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

(ダウンロード不可)

関連スライド

各ページのテキスト
1.

14言語同時リリース! 内製ローカライズシステム「LOCO」と RE ENGINEの連携が支える、 物量に屈しないワークフロー 則武 治樹 Maurice Ossenbrink

2.

14言語同時リリース! 内製ローカライズシステム「LOCO」と RE ENGINEの連携が支える、 物量に屈しないワークフロー 則武 治樹 Maurice Ossenbrink RE ENGINE採用タイトルを取り巻くローカライズの事情についてお話させていただきます。 1

3.

目次 • カプコンのローカライズ事情 • 翻訳でよくある問題 • タイトルのローカライズの流れ • ローカライズの物量 2 今回のアジェンダです。 まずはゲームにおけるローカライズの事情について、カプコン内の事情と照らし合わせつつ 前提から説明致します。 その後は 難しい翻訳作業や物量の問題に対する、エンジン上の取り組みと、自社システム LOCO を活用した対応方法について 共有していきたいと思います。 2

4.

3 最初に、カプコンにおけるゲーム中の文言の扱いなどについて紹介します。 複数言語対応を経験した方には基本的な事もあるかもしれませんが、まずは認識を合わせるつもりでご覧ください。 3

5.

カプコンのローカライズ事情 近年のゲームは全世界同時発売が標準化されている 14言語 15言語 14言語 4 近年のゲームは最初の発売時点で、どの国のユーザーにも等しく最良の体験をしてもらうため 全世界同時リリースが求められています。 加えて近年は対応言語数が顕著に増えており、カプコンのリリースタイトルはいずれも14言語前後の対応を行っています。 最終的に翻訳するのが必須となっているわけですが、ゲーム上でどうやって文言を扱えば良いのでしょうか? 4

6.

カプコンのローカライズ事情 ゲーム中のテキスト実装 スクリプト こんにちは GUI内のテキスト こんにちは 5 例えば“こんにちは”という文字を画面に出します。 ゲームのスクリプトやアセットに直接“こんにちは”と入力して、それをそのまま画面に表示しました。 5

7.

カプコンのローカライズ事情 ゲーム中のテキスト実装 スクリプト Hello GUI内のテキスト Hello 6 後からそれを英語にしたい場合は “Hello” に書き換える作業が必要になります。 これだけなら簡単ですね。 6

8.

カプコンのローカライズ事情 ゲーム中のテキスト実装 スクリプト スクリプト こんにちは 元気? GUI内のテキスト GUI内のテキスト こんにちは 元気? … (数万件) 7 では、1000件、1万件、数万件と増えてくるとどうでしょう? 膨大なスクリプトやアセットから作業漏れなく、全ての文章を置き換える作業が必要になります。 爆発的に作業量が増えてしまいますし、これは現実的ではありません。 7

9.

カプコンのローカライズ事情 ゲームデータに直接文字列を埋め込むと翻訳作業が非常に困難になる データをIDで作成し、表示時にIDから文言に置き換える カプコンでは、そのID名と文言の組み合わせデータを 「メッセージ」 と呼んでいる 8 ゲームデータにスクリプトなどで直接文章を書き込むと、翻訳作業が非常に困難になります。 なので該当箇所はID名などで情報をやりとりし、実際に画面に映す際に具体的な文言に置き換えることを行っています。 カプコンでは、そのID名と文言の組み合わせデータを「メッセージ」と呼んでいます。 8

10.

カプコンのローカライズ事情 メッセージを使った運用 ID (メッセージ名) GreetingFirst メッセージ管理システム GUI内のテキスト 9 さきほどの例で考えます。 ゲーム中ではあくまで “GreetingFirst” というメッセージIDだけ埋め込みます。 また、それとは別に システム側で日本語版と英語版の文章データをロードしておきます。 9

11.

カプコンのローカライズ事情 メッセージを使った運用 ID (メッセージ名) GreetingFirst GreetingFirst GUI内のテキスト メッセージ管理システム メッセージ [日本語] こんにちは [英語] Hello 10 このメッセージIDをゲーム画面に表示するタイミングで、元のメッセージの情報を見に行きます。 10

12.

カプコンのローカライズ事情 メッセージを使った運用 ID (メッセージ名) GreetingFirst GreetingFirst メッセージ管理システム メッセージ GUI内のテキスト [日本語] こんにちは [英語] Hello 日本語 English こんにちは Hello 11 メッセージには各言語の文言が入っているので、日本語なら“こんにちは”、英語なら “Hello” と表示することができます。 設定1つで全ての言語が切り替えられるようになったので、後からテキストの実装を変更する必要はありません。 11

13.

カプコンのローカライズ事情 エンジン上のメッセージの扱い ・MessageList アセット + Message アセット MessageList ItemHeal1 グリーンハーブ ItemHeal2 レッドハーブ ItemHeal3 イエローハーブ Achievement_A 会場に来た Achievement_B セッションを受講した Achievement_C 感想を投稿した TitleMenu1 NEW GAME TitleMenu2 LOAD TitleMenu3 OPTION Message 12 さらに具体的な話をします。エンジン上ではアセットの形式で扱う必要があるのですが、 メッセージは MessageList アセットと Message アセットの組み合わせで管理しています。 MessageList アセットは Message アセットを複数持つ設計になっており、Message アセットは基本的に必要に応じてロード・アンロードする単位になっています。 その Message アセットの中に、複数のメッセージデータを入力しています。 12

14.

カプコンのローカライズ事情 エンジン上のメッセージの扱い ・エンジン上の機能はメッセージ自体の作成に特化 ・Excelを使った編集・閲覧をエンジン側でサポート 13 エンジン上から MessageList アセットを編集するインターフェースは、各メッセージの管理に特化しています。 メッセージの内容の編集についてはエンジン標準のインターフェースよりもExcelの方が編集しやすいので Excelとしてデータを開きなおしたり、その内容を保存して反映する機能を持っています。 また メッセージは比較的単純なJSONデータとなっており、タイトル側で管理しているExcelからエクスポートするツールを自作しているケースもあります。 13

15.

カプコンのローカライズ事情 エンジン上のメッセージの扱い IDを選択したり、IDから日本語を自動表示するUIで制作を補助 14 また、ゲームオブジェクトなどにメッセージを入力する時は専用のエディタで補助しています。 例えばプロパティに MessageId 属性を付けると、そのUIがメッセージ表示ウィンドウになり、実際に文言が表示されるようになります。 このUIはボタンにもなっていて、クリックすると選択・検索するためのダイアログが表示されます。 この仕組みはエンジン提供のツールだけでなく、タイトルの自作ツール上でも自由に利用することができます。 14

16.

カプコンのローカライズ事情 メッセージタグ ・<タグ名>~</タグ名>の形式をサポート ・タイトルごとにスタイルも定義可能 ・タイトル側でスクリプトのコールバックを用いて拡張も可能 15 現代のゲームでは文字の装飾も欠かせませんが、RE ENGINEはタグによる文言の制御をサポートしています。 太字、斜体などの基本的な装飾はもちろん、グローや影、テキスト配置の調整も可能です。 タイトルごとにスタイルをあらかじめ定義しておいて、1つのタグでまとめて表示設定を変更することもできます。 15

17.

カプコンのローカライズ事情 メッセージタグ ・ルビの設定(縦書きにも対応) ・他のメッセージへの置換 縦書き 16 少し変わったところではルビの制御も可能です。 テキスト自体の設定で縦書きもできますが、その場合でもルビを表示することができます。 タグの内容自体を、別のメッセージの内容に置き換えるような機能もあります。 例えば、この下の画像では「gunlance」を、ルビ付きの漢字表記をしている別のメッセージに置き換えています。 16

18.

カプコンのローカライズ事情 組織・ツール間の関係 Message タイトル 依頼 17 少し話題を変えて、このメッセージをどうやって組織的に運用しているのか説明します。 メッセージアセットに対して、 アーティストが画面の絵作りに必要な文言を追加したり、ゲームデザイナーが実際にゲーム内のセリフを書いたりします。 また、サウンドチームにセリフの収録をお願いするためにメッセージの仕組みを使っていることもあるので サウンドチームが編集することもあります。 このメッセージアセット自体は、プロジェクト内でPerforce P4によりバージョン管理されます。 17

19.

カプコンのローカライズ事情 組織・ツール間の関係 同期 (深夜) DB (LOCO) Message タイトル 依頼 ローカライズチーム 18 各タイトルで管理されているメッセージアセットは、深夜にエンジンチーム管轄のPCによって同期作業を行い、ローカライズチーム管轄のデータベースと同期します。 ローカライズチームの人がタイトル内のメッセージを直接触る必要は基本的にありません。 ここまでは、エンジン側の仕組みについて説明してきました。 次は、この図の右側の「ローカライズチーム」について説明します。 18

20.

カプコンのローカライズ事情 社内のローカライズチーム ・65名+ ・13言語のネイティブ言語担当者 ・20か国以上の出身メンバー 英語 中国語 (簡体・繁体) 韓国語 ドイツ語 ブラジルポルトガル語 フランス語 イタリア語 スペイン語 (ラテンアメリカ・ヨーロッパ) ロシア語 ポーランド語 Created with mapchart.net アラビア語 19 カプコンでは翻訳の一部を外部会社に委託することもありますが、 ローカライズ作業の中心となる部分は社内のローカライズチームが担当しています。 大阪にある社内のローカライズチームは、現在65名以上で構成されています。 チームには13言語それぞれに対応したネイティブの言語担当者が在籍しており、幅広い言語に高品質で対応できる体制を整えています。 さらに、メンバーの出身国は20か国以上に及びます。 多様な文化的背景を持つ人材が集まっています。 19

21.

カプコンのローカライズ事情 LOCO データベース + CATツール(Webインターフェース) ローカライズチームが使用している翻訳用の支援ツールは内製です。名前はLOCOです。 LOCOはデータベースであると同時に、ブラウザ上で動作するCATツールとしての機能も備えています。 (※CAT:Computer-Assisted Translation。翻訳支援用のソフトウェア) 一般的なローカライズでは、データ管理と翻訳作業に別々のツールを使うことも少なくありません。 しかし、LOCOではCAT機能をシステムに組み込んでいます。 この形になった理由は、後半にまた説明します。 20

22.

21 前提として、メッセージ自体の扱いや使用しているツールについて説明してきましたが、 ここからは翻訳の 質 に関わる、やや複雑な翻訳作業上の問題について紹介していきます。 21

23.

翻訳でよくある問題 単純な翻訳が難しいケースがある ・例:ことわざ、早口言葉、冗談 など ・例:正誤判定の〇は意味が変わる 言語 正解 日本語など 〇 英語など ✓ 一部正解 不正解 × または ✓、斜線など(主に学校) または ½ など × または 〇(間違いを囲む) 22 翻訳作業は単純にはいかないことが多いです。 例えばその言葉でよくある言い回しや、言葉遊びがあります。 他にも、文化的に全然異なる意味になってしまうものもあります。 例えば学校の答案の正誤について考えます。 一例として、日本では「〇は正解、チェックは不正解」と解釈されますが、アメリカだと「チェックは正解、〇は不正解」と解釈することが多いです。 こういう文化ごとに異なる表現についてはローカライズチームが情報発信をしており、 そもそもゲーム内で行わないように工夫していることも多いです。 ここに挙げたケースはほんの一部で、単純に翻訳できないケースは他にもたくさんあります。 22

24.

翻訳でよくある問題 翻訳中によく発生する問題 ・数字の書き方や単位 (フォーマット、ヤードポンド) ・日付フォーマット (2026/10/2、2/10/2026) ・主人公の男性・女性に対応する変化 (彼/彼女、格変化) ・RTL (right-to-left) 言語用の調整 ・シリーズ・翻訳者ごとの用語の揺れ ・翻訳後に表示がはみ出る問題、タグの移植ミス ・状況にあわない翻訳 ・言語ごとにセリフのトーンが違う ・セリフ音声と字幕の不一致 23 例えばここに書かれているような事が課題になりやすいです。 言語ごとに単位や日付のフォーマットが変わります。 言語によっては、性別で文章が変わることもありますね。 また、アラビア語のように右から左へ読む言語もあります。 あとはシリーズや翻訳者で用語が変わってしまったり、 翻訳したら表示やタグの内容が変わってしまうトラブルも実際にあります。 同じ文章でも全然ニュアンスが違う事もありますし、 セリフのイメージや尺が合わなくなってしまうこともあります。 23

25.

翻訳でよくある問題 翻訳中によく発生する問題 ・数字の書き方や単位 (フォーマット、ヤードポンド) ・日付フォーマット (2026/10/2、2/10/2026) ・主人公の男性・女性に対応する変化 (彼/彼女、格変化) RE ENGINE側の仕組みで解決 ・RTL (right-to-left) 言語用の調整 ・シリーズ・翻訳者ごとの用語の揺れ ・翻訳後に表示がはみ出る問題、タグの移植ミス ・状況にあわない翻訳 ・言語ごとにセリフのトーンが違う ・セリフ音声と字幕の不一致 24 ここからは、これらの問題をどうやって解決しているのか1つずつ見ていきましょう。 ちなみにエンジンとLOCO、どちらで解決しているのかは問題ごとに異なります。 まずはエンジン側の仕組みから順番に説明します。 24

26.

翻訳でよくある問題 数字の書き方や単位、日付フォーマットなど : メッセージタグ拡張 対応するためのメッセージタグをタイトル間の共通ライブラリで定義 <NUMBER 1234567.89> 言語 数値 日本語 1,234,567.89 英語 1,234,567.89 フランス語 1 234 567,89 ドイツ語 1.234.567,89 ヒンディー語 12,34,567.89 25 エンジンが提供しているメッセージタグ機能ですが、スクリプトで文言の変換などをできるようにカスタマイズ性を持たせています。 タイトル間で共通運用しているライブラリで 単位や日付のフォーマットを変更する機能を持つことで、 言語にあわせて単位や日付の表記を自動的に変更できるように工夫しています。 部分的な例ではありますが、例えば数字のカンマ付き書式はNUMBERタグで各言語に適した表記に変換が可能です。 25

27.
[beta]
翻訳でよくある問題

数字の書き方や単位、日付フォーマットなど : メッセージタグ拡張
対応するためのメッセージタグをタイトル間の共通ライブラリで定義

<DATETIME {0}
"YYYY/MM/DD HH:mm"> (UTC)

ロケール

日付

日本

2026/10/02 13:59 (UTC)

アメリカ

10/02/2026 01:59p.m. (UTC)

ドイツ

2.10.26 13:59 Uhr (UTC)

26

別の例として、DATETIMEタグ で各国の書き方に合わせた日付を表示することもできます。
“{0}”と書かれている部分はスクリプトからパラメータを渡すことができます。
こういった変換については、エンジン開発者に相談することなく、ローカライズチームが自主的に拡張することができました。

26

28.

翻訳でよくある問題 主人公の男性・女性に対応する変化 (彼/彼女、格変化) 話者や対象の性別で文言が大きく変わる言語がある 主人公や仲間の性別の選択など、ゲーム内容で動的に変わることもある 言語 男性 女性 日本語 彼は有名な教師だ 彼女は有名な教師だ 英語 He is a famous teacher. She is a famous teacher. ドイツ語 Er ist ein berühmter Lehrer. Sie ist eine berühmte Lehrerin. 27 話者や対象の性別で文章が大きく変わることがあります。 ストーリー設定上、性別が固定であれば特に問題にはなりませんが ゲームは操作キャラクターの性別設定を自由に変えたりすることができるため、 それによって大きく文章の内容が変わってしまうことがあります。 話者も対象の性別も選択可能な場合など、場合によっては組み合わせが発生することもあります。 27

29.

翻訳でよくある問題 主人公の男性・女性に対応する変化 (彼/彼女、格変化) : 専用機能の実装 「LSNR」「SPKR」タグを使い、同じメッセージ内で話者・対象の性別ごとの文言を切り替え 28 性別に伴う変化への対応としては、リスナー・スピーカータグで同じメッセージから性別ごとに内容を切り替えられるようにしました。 GUI上のテキスト表示機能に設定用のプロパティを用意し、エディタやスクリプトからの操作を可能にしました。 少し変わったところとして、「不明」という性別も設定可能です。 28

30.

翻訳でよくある問題 RTL(right-to-left)言語対応 レイアウト処理に HarfBuzz を採用している 必要があれば LTR、RTLマークを表すタグ <LTR> <RTL> を使って調整 29 ゲームで表示する上で対応が難しい言語としてよく挙げられるのがアラビア語ですが、カプコンではアラビア語も対応しています。 レイアウト処理については安定性や速度の観点から、ミドルウェアの HarfBuzz を採用しました。 29

31.

翻訳でよくある問題 RTL(right-to-left)言語対応 RTL時にレイアウトを切り替える対応を促進 英語 アラビア語 30 アラビア語の場合、メニュー画面も左右反転した方がより高品質な体験に繋がります。 ただ鏡映しにすれば良いという話ではありません。 ボタンアイコンやリストUIなど、左右に反転する部分としない部分の両立が必要となり、非常に制作コストがかかります。 『バイオハザード レクイエム』ではアーティストの工夫により、アセット自体を切り替えて実現しました。 今後はエンジン機能で任意の箇所のレイアウトのみを反転する機能を提供し、更なるコストカットを実現していきます。 30

32.

翻訳でよくある問題 翻訳中によく発生する問題 ・数字の書き方や単位 (フォーマット、ヤードポンド) ・日付フォーマット (2026/10/2、2/10/2026) ・主人公の男性・女性に対応する変化 (彼/彼女、格変化) RE ENGINE側の仕組みで解決 ・RTL (right-to-left) 言語用の調整 ・シリーズ・翻訳者ごとの用語の揺れ ・翻訳後に表示がはみ出る問題、タグの移植ミス ・状況にあわない翻訳 LOCO側の仕組みで解決 ・言語ごとにセリフのトーンが違う ・セリフ音声と字幕の不一致 31 ここまでの項目についてはエンジン側の仕組みで解決できましたが、 これ以外については翻訳時の問題なので、エンジン外のツールで解決する必要があります。 ここからは、LOCOの仕組みによる解決について紹介していきます。 31

33.

翻訳でよくある問題 シリーズ・翻訳者ごとの用語の揺れ シリーズ内での用語の統一、同じ単語でもシリーズごとに翻訳内容が異なる 担当者ごとに翻訳後の用語が変わってしまう Makai ヴァンパイアシリーズ 魔界 Demon World デビルメイクライシリーズ 魔界樹 Demon Tree 32 用語や表現の統一についてお話します。 同じ原文でも、シリーズ、コンテキストや翻訳者の好みによって違う翻訳になることがあります。 たとえば、日本語の「魔界」という言葉です。ゲームシリーズによって英語での訳し方が異なります。 『ヴァンパイア』シリーズでは「Makai」が使われていますが、『Devil May Cry』シリーズでは「Demon World」など、 「Demon」を使った表現で翻訳されています。 こうした情報を翻訳者が知らないと、別の訳語を使ってしまい、表現のばらつきにつながります。 32

34.

翻訳でよくある問題 シリーズ・翻訳者ごとの用語の揺れ : LOCOのデータベース機能 LOCOには文脈に合わない翻訳、過去用語が使われていない翻訳を指摘する機能がある 翻訳メモリー (過去翻訳との一致度) 用語集 翻訳者コメント メタ情報 原文の変更 33 このような用語の揺れが起こらないように、LOCOのデータベース機能を活用しています。 翻訳中は、より多くの情報やメタデータを表示できます。 翻訳者は各文字列の内容だけでなく、使用箇所や発話キャラクターまで確認しながら作業できます。 33

35.

翻訳でよくある問題 シリーズ・翻訳者ごとの用語の揺れ : LOCOのデータベース機能 LOCOには文脈に合わない翻訳、過去用語が使われていない翻訳を指摘する機能がある 翻訳メモリー (過去翻訳との一致度) 34 例えば、「翻訳メモリー」と呼ばれる機能の結果も表示しています。 今翻訳しているゲームのデータだけでなく、シリーズの過去作品のデータも使えるため、翻訳する原文と過去のデータを自動で見比べることができます。その結果、これま でに使われた同じ訳や、よく似た訳を、一致率とあわせて表示できます。 これにより、シリーズ全体で表現のぶれを減らし、一貫した翻訳を保つことができます。 34

36.

翻訳でよくある問題 シリーズ・翻訳者ごとの用語の揺れ : LOCOのデータベース機能 LOCOには文脈に合わない翻訳、過去用語が使われていない翻訳を指摘する機能がある 用語集 35 また、LOCOにはゲームごとの用語集だけでなく、シリーズ全体の用語集もあります。 原文に出てくる用語と照らし合わせて、用語集に登録されている正しい訳語を表示できます。 35

37.

翻訳でよくある問題 シリーズ・翻訳者ごとの用語の揺れ : LOCOのデータベース機能 LOCOには文脈に合わない翻訳、過去用語が使われていない翻訳を指摘する機能がある 原文の変更 36 一度翻訳された後に原文が変更されるケースも少なくありません。 その場合は、現在のバージョンの横に翻訳時点の前回バージョンを表示し、差分をハイライトできます。 これにより、翻訳者は必要な修正を容易に行えるようになります。 36

38.

翻訳でよくある問題 翻訳後に表示がはみ出る問題 : 文字数チェック ・メッセージごとに制限文字数を設定することが可能 ・タイトル側の制作段階で ある程度UIにゆとりを持たせるように周知 例 文字数オーバーを赤枠で通知 文字数制限についての情報 37 次の問題です。翻訳が⾧すぎてUIに入りきらず、表示がはみ出してしまうケースがあります。 これにより、再翻訳や再チェックが発生し、コストが大きく増加します。 原文のメッセージを作成する際に文字数制限を設定しておくことで、 LOCO上で翻訳中に制限文字数を超えているかどうかを自動的に警告できます。その場で修正することも可能です。 さらに、全言語・全メッセージを対象に文字数チェックを実行できます。 これにより、後からまとめて問題を検出することもできます。 37

39.

翻訳でよくある問題 タグの移植ミス : メッセージタグのプレビュー機能 ・タイポ、タグの欠落、タグの使い方を間違えるなどのトラブルが多い ・エンジンを起動せずにある程度プレビューが可能 アイコンプレビュー タグ色分け表示 38 文字数制限以外にも、テキストを正しく入力するための機能があります。タグの入力ミスや欠落、誤った使い方もよく発生します。 タグのパースエラーが発生すると、表示が正しく行われなかったり、場合によってはゲームがクラッシュしたりすることがあります。 しかし、動作確認のためにエンジンを起動すると、かなり時間がかかってしまいます。 LOCOでは、翻訳中にエディター上でエンジンタグを直接プレビューできるため、実際の表示を確認しながら作業できます。 さらに、原文と翻訳文のタグを比較し、タグの抜けや違いがあれば自動で警告できます。 38

40.

翻訳でよくある問題 状況にあわない翻訳 : スクリーンショット表示機能 そのメッセージが表示される瞬間のスクリーンショットを取得して表示 ・エンジンでスクリーンショットを自動取得、LOCOへ送信 ・スクリーンショットデータはメッセージIDに紐付け 39 ほかによくある問題として、翻訳者がそのメッセージがどの画面で使われるのか分からない、というものがあります。 LOCOではこれに対して、エンジン側でスクリーンショットを自動的に撮影し、システムへ送信する仕組みを導入しています。 スクリーンショットはメッセージIDに紐付けて管理されています。 該当するデータがあれば、各文字列が実際にどのように表示されるのかを画面イメージで確認できます。 また、原文言語と翻訳言語のスクリーンショットを切り替えて表示することもできます。 そのため、翻訳結果が実際の画面でどのように見えるかまで確認できます。 39

41.

翻訳でよくある問題 状況にあわない翻訳 : スクリーンショット表示機能 そのメッセージが表示される瞬間のスクリーンショットを取得して表示 ・スクリーンショットデータにはUIアセットのメタデータも含まれる ・どのUIアセットで発生しているかを明示し、不具合を報告 GUIの詳細 40 また別の問題として、テキストの修正だけでは解消できないUIの表示不具合があります。 ゲーム画面だけを見ながら作業するワークフローでは、関連するアセットの情報が分かりません。そのため、ローカライズ担当者からは不具合を報告しづらいケースが多くあ ります。 LOCOでは、スクリーンショット機能にUIアセットのメタデータも含まれています。 そのため、どの画面のどの要素で問題が発生しているのかを明確に確認できます。 結果として、表示の不具合をより正確かつ効率的に報告できるようになります。 40

42.

翻訳でよくある問題 言語ごとにセリフのトーンが違う : 波形データの紐付け・確認 ・収録済みの原語音声をLOCOへアップロード ・聞きながら⾧さやトーンを調整 収録前、原文の音声を確認 波形の再生 41 次は別のテーマです。音声セリフの翻訳について説明します。 セリフ収録用の台本もローカライズの対象ですが、よくある問題として、翻訳が原文の⾧さやトーンにあわないケースがあります。 LOCOでは、収録済みの原語音声をアップロードできます。 例えば、英語音声用の翻訳を行う際に、収録済みの日本語音声を聞きながら作業することができます。 これにより、⾧さやトーンをその場で調整し、より自然なセリフに仕上げることができます。 41

43.

翻訳でよくある問題 セリフ音声と字幕の不一致 : 波形データの紐付け・確認 ・口パクや尺にあわせて収録現場で台本を修正することが多い ・収録済み音声を確認し、字幕テキストが音声と一致するように編集 収録後、英語音声を確認 波形の再生 42 字幕についても、似たような問題があります。 口パクに合わせるためなどの理由で、収録時にセリフが変更されることはよくあります。その結果、音声と字幕の内容が一致しなくなることがあります。 また、台本にはメッセージタグが含まれていることも多く、収録後のセリフをそのまま台本に反映するのが難しいケースも少なくありません。 LOCOでは、翻訳者が収録済みの音声を直接確認できます。これにより、字幕テキストを最終音声に合わせて調整し、音声と字幕のずれを防ぐことができます。 42

44.

43 ここまではメッセージ1つ1つに起こりうる問題について確認してきました。 ここからは、メッセージ全体がどのように作成・管理され、製品になっていくのかの流れについて紹介していきます。 カプコンのタイトルのローカライズが行われる基本的な流れを軽く説明します。 43

45.

タイトルのローカライズの流れ タイトルの開発フロー 企画・上程 試作開発 本制作・量産 QA・リリース 試作開発時点では1言語のみ その1言語がソース言語として扱われる カプコン内製タイトルでは基本的に日本語が使われる 基本的にローカライズチームはまだタイトルとは関わらない 44 まず、前提としてタイトル開発の流れに触れておきます。 弊社では「企画・上程」の検証をしっかり行ってから「試作開発」、 その内容をふまえて「本制作・量産」「QA・リリース」と進めます。 タイトルの試作までの段階では1言語しか扱いません。 カプコン内では日本語が公用語として使われているので、基本的に全て日本語で制作します。 この時点からメッセージの仕組みで文言を入力していくのですが、 試作ではゲーム内容自体が変わることが多いため、ほとんどのタイトルではまだ翻訳作業を行っていません。 44

46.

タイトルのローカライズの流れ タイトルの開発フロー 企画・上程 試作開発 本制作・量産 QA・リリース 本制作・量産からローカライズに着手 ローカライズチームに相談し、ゲームが完成している部分から順次作業が始まる RE ENGINE のアセットと LOCO のデータの同期を開始 途中で追加・差し替えなども発生する 45 ゲーム内容が固まって本制作、および量産体制に入ると、既に固まっている部分から順に翻訳作業を始めていきます。 この時点でエンジン内のアセットと、LOCOのデータの同期などを行います。 ソース言語が日本語のタイトルの場合、まずは英語から手を付けることが多いです。 この後もタイトルの制作中に日本語が追加されたり、途中で日本語の文言が差し替わったりすることも多いです。 45

47.

タイトルのローカライズの流れ タイトルの開発フロー 企画・上程 試作開発 本制作・量産 QA・リリース QAチェックの後半 ローカライズQA開始 各言語設定で担当者がローカライズ内容に抜けが無いかチェック 単純な表示の問題だけでなく、フォントの表示なども確認 46 ゲーム開発の末期ではQAテスターによるゲーム全体のチェックが行われますが、ローカライズについても専用のチェックを行います。 担当者が各言語に対し、正しく翻訳・表示されているか 専用のチェック項目を用意して確認します。 各言語のネイティブスピーカーもテストプレイを行っており、 フォントが正しく表示されているか、特定の言語だけ表示が不自然なケースがあるかなどもチェック対象となります。 46

48.

タイトルのローカライズの流れ アップデートを繰り返すタイトル 『モンスターハンターワイルズ』、『ストリートファイター6』など アップデートを複数回行うタイトルが増えている Develop Update1 Update2 47 ワークフローに関連するトピックスとして、アップデートタイトルの問題についても紹介しておきます。 『モンスターハンター』シリーズ、『ストリートファイター』シリーズなど、アップデートを繰り返し行うタイトルが増えています。 こういったタイトルでは、タイトルアップデートごとにブランチを作ることが多いです。 47

49.

タイトルのローカライズの流れ アップデートを繰り返すタイトル × LOCOの同期の問題 ・アップデートのブランチごとに別々のメッセージを管理するのは非常に複雑化しやすい ・しかしパッケージごとに余分なデータは省きたい 同期 同期…? Develop Update1 LOCO 同期…? Update2 48 それらのタイトルで負担になっているのが アップデート用のブランチプロジェクトと本来の開発プロジェクトのデータの同期です。 特にメッセージについてはエンジン外のシステムで翻訳作業を行っている事もあり、管理が複雑になりがちです。 別々のデータベースに分けると、その手続きも必要になりますし、1か所の修正を他のデータベースにも反映する手間が発生します。 基本的に同じデータベースを使うしかありません。 しかし使わないメッセージでゲームパッケージの容量が余計に増えてしまうのは避けたいので、今のバージョンと無関係なメッセージは可能な限り省きたいです。 48

50.

タイトルのローカライズの流れ バージョン機能 アセット自体のバージョン管理とは別に、メッセージ専用のバージョン設定を元に管理 無効 49 そういった事情を踏まえて、基本的には同一のデータベースを利用し、 どのバージョンまでのメッセージを製品に含めるのかを バージョン設定で制御できるようにしました。 バージョンはDLCやマイナーパッチなどを考慮し、任意の文字列で設定することができます。 辞書順で大小比較し、該当するバージョンより大きい文字なら製品に含めないようにする仕組みになっています。 49

51.

50 タイトルでメッセージがどう作られて運用されているのかについて紹介したところで、 ここからは改めて物量の問題について説明していきます。 50

52.

ローカライズの物量 例えば… 約6万メッセージ 日本語以外の14言語に翻訳する場合の作業量は…? 15言語 51 例えば、『モンスターハンターワイルズ』は 初期リリース時点で製品に含まれる日本語は大体6万メッセージでした。 これを日本語以外の14言語に翻訳する場合、作業量はどのぐらいの規模感になるでしょうか? 51

53.

ローカライズの物量 例えば… 約6万メッセージ 日本語以外の14言語に翻訳する場合の作業量は…? × 14言語 = 約84万!! (日本語だけで100万文字) 15言語 猶予は 約12か月! 52 単純に掛け算したら、メッセージは大体84万となります。 この84万件のメッセージを12か月で捌く計画となりました。 単純計算で、営業日あたり大体3500件を翻訳する必要があります。 実際にはさらに没となるデータがあったり、期間の後半に集中して新規テキストが追加されたりします。 そのメッセージ1つ1つに、先ほど申し上げた翻訳作業の難しさもあります。 52

54.

ローカライズの物量 ローカライズチームの業務 複数タイトルの同時開発 + 旧作のローカライズ対応 = 管理すべきローカライズ文字列は数百万件 53 また、ローカライズチームは常に1タイトルだけに専念しているわけではなく、これと並行して複数タイトルを進行しています。 それに加えて、旧作もアップデートや新しいプラットフォームへの対応が継続的に行われており、そのたびにローカライズの修正が必要になります。 その結果として、同時に管理しなければならないローカライズ文字列は、社内全体で数百万件規模にまで膨れ上がっています。 53

55.

ローカライズの物量 大量のローカライズを処理するには 作業の差戻しを防ぐ 品質管理を自動化する 連絡の頻度を減らす 54 さらにその数百万件の1つ1つが、このセッションの前半で申し上げた難しさを持っている状態です。 その作業の内容に問題があって差戻すことが増えると、ますます業務量が増えてしまいます。 なので必要な情報を見落とさないようにし、作業の差戻しを防ぐ仕組みが必要です。 成果内容のチェックも同様で、単純なミスは人の手を介することなく検出したいです。 メッセージに変更があった時の連絡や毎日の業務の進捗確認など、担当者や組織の間で連絡をすることも頻繁にあります。 この頻度も業務を圧迫する一因なので、なるべく手数を減らしたいです。 54

56.

ローカライズの物量 LOCOが必要とされた理由 日本語が原文のメッセージ 英語が原文のメッセージ 同一のデータベース その他 追加の情報 シリーズ作品のメッセージ 用語集 満足できるシステムが無い → LOCO を作成 55 大量のローカライズを成立させるためのデータベースシステムが必要でしたが、市販のシステムでは対応が難しい課題がありました。 まず、カプコンでは、同じタイトルの中でも、日本語から翻訳する場合と英語から翻訳する場合があります。 そのため、同一のデータベース内で複数の原文の設定を扱う必要があります。 さらに、シリーズ作品や過去資産が非常に多く存在します。 シリーズ内で表現や用語の一貫性を保つためには、複数のデータベースから過去タイトルの用語を取り込める仕組みが必要です。 こうした要件は、当時使っていた市販のシステムでは十分に対応できませんでした。 また、一般的なCATツールは主に文書翻訳向けに作られており、ゲーム翻訳では使いづらい部分もありました。 そのため、内製の翻訳システム LOCO を構築しました。 55

57.

ローカライズの物量 LOCO 日本語が原文のメッセージ 全言語を管理できるデータベース 英語が原文のメッセージ シリーズ作品のメッセージ 自動品質チェック CATツール 翻訳支援用の機能 課題トラッカー レポート生成 56 LOCOの大まかな構成図です。 全言語のゲームテキストを管理するデータベースとしての機能があり、1つのタイトルだけでなく 複数のタイトルの全言語の情報を含めています。 また、CATツールとして Webインターフェースの提供だけでなく、自動品質チェック、課題トラッカー、レポート生成などの機能も含めています。 これにより、ローカライズ文字列の管理・翻訳・チェックを一元化しています。 56

58.

ローカライズの物量 LOCO サーバー構成図 React フロントエンド API Nginx ロードバランサー .NET アプリサーバー .NET アプリサーバー .NET アプリサーバー SQL サーバー 57 ちなみにシステム構成としては、Reactベースのフロントエンドが、ロードバランサー経由でAPIにアクセスし、 その先に複数のバックエンドサーバーとSQLサーバーが接続されています。 以前は単独のサーバーで稼働していたのですが、PCスペックが限界でした。 そのため、ロードバランサーを挟んで、たくさんのユーザーに対して複数のサーバーを割り振っています。 APIは外部からも利用できるので 内部のデータベースにタイトル側から自由にアクセスすることもできます。 57

59.

ローカライズの物量 物量に立ち向かうためのLOCOの機能 ・エンジンのアセットに最適化されたデータ構造 ・未翻訳のメッセージ、原文変更による再翻訳が必要なメッセージを素早く特定 検索条件 58 LOCOはデータベースであると同時に、大量のローカライズデータを管理するためのさまざまな機能があります。 エンジン内の原文メッセージの追加や変更は、ほぼリアルタイムでLOCOに反映されます。 その変更履歴をもとに、未翻訳のメッセージや再翻訳が必要なメッセージを素早く検索・表示できます。 58

60.

ローカライズの物量 物量に立ち向かうためのLOCOの機能 ・メッセージ・言語ごとにステータス管理 ・ドラフト → 編集済み → チェック完了:翻訳状況を可視化 翻訳ステータス 59 また、各メッセージ・各言語ごとに翻訳ステータスを管理できます。 「ドラフト」「編集済み」「チェック完了」などのステータスがあり、翻訳工程に応じて更新されます。 これらの情報をもとに、条件やフィルターを自由に組み合わせて検索できるため、必要なデータを素早く見つけることができます。 標準ステータスは色で区別されているため、翻訳がどの状態なのかを一目で確認できます。 59

61.

ローカライズの物量 グループ単位で管理 ・DB内で文字列を自由にグループ化 (例:セクション単位、全ボイス文、全システムメッセージなど) ・グループは ・直接リンクでき、Webで一括で開ける ・Excelにダウンロード/エクスポート・再マージ可能 ・グループ単位でレポートを生成 60 LOCOでは、データベース内の文字列を自由にグループ化できます。 例えば、セクション単位や、全ボイス台本、全システムメッセージといった形で整理できます。 社内での翻訳やチェック作業では、グループへのリンクをそのまま共有できます。 リンクを開くだけで、Webインターフェース上から対象の文字列をまとめて確認できます。 一方、外部の翻訳会社と作業する場合は、グループ単位でExcelにエクスポートできます。 作業後はLOCOへ再度取り込めるため、面倒なファイルのバージョン管理が不要になります。 また、グループ単位でレポートを生成できるため、進捗管理や品質の確認も簡単に行えます。 60

62.

ローカライズの物量 自動品質チェック ・いつでも全言語の最新のテキストに対して実行可能 一般的な品質問題 (スペース、句読点) 61 また、大量のテキストを効率よく処理するために、自動チェックは非常に効果的です。 LOCOには複数の自動チェック機能が搭載されています。 これらのチェックはいつでも実行でき、常に最新のテキストを対象に確認できます。 さらに、全言語を対象に一括で実行することも可能です。 この仕組みにより、よくある問題を早い段階で発見できます。 まずご紹介するのは、基本的な品質問題の検出です。 スペースや句読点の問題など、例えば二重スペースといった入力ミスを赤い枠で表示しています。 61

63.

ローカライズの物量 自動品質チェック ・いつでも全言語の最新のテキストに対して実行可能 用語の一貫性 62 次は、用語の一貫性チェックの例です。 ここでは、同じ原文に対して翻訳が統一されているかを確認しています。 この例では、同じ日本語のシステムメッセージに対して複数の英語訳が使われているため、一貫性の問題を検出しています。 62

64.

ローカライズの物量 自動品質チェック ・いつでも全言語の最新のテキストに対して実行可能 タグの不整合 ・タグの不整合 63 タグのチェックも一括で実行できます。 ここでは、原文と翻訳文のタグを比較し、同じ内容になっているかを確認しています。 この例では、日本語の原文で使用されているアイコンタグとは別のアイコンタグが英語訳で使われていることが分かります。 表示しているのはシンプルな例ですが、タグの入力ミスや、原文と異なる順番で使われているタグも検出できます。 63

65.

ローカライズの物量 自動品質チェック ・いつでも全言語の最新のテキストに対して実行可能 スペルミス 64 スペルチェック機能もあります。 オープンソースのスペルチェック機能と社内の用語集を組み合わせることで、 一般的なスペルミスだけでなく、登録済みの用語の誤りも自動で検出できます。 さらに、正しい表記の候補も表示されるため、翻訳者はすぐに修正できます。 64

66.

ローカライズの物量 自動品質チェック ・いつでも全言語の最新のテキストに対して実行可能 数値の一貫性チェック 65 たまにある問題として、数字の打ち間違いなどがあります。 特に、数値が文章の一部として書かれている場合は、翻訳時や言語テストの中で違いを見つけるのが難しくなります。 自動チェックには、原文と翻訳文に含まれる数値を比較して指摘する機能もあります。 65

67.

ローカライズの物量 統合課題トラッカー よくある問題: コミュニケーション過多! ゲームデザイナーなど 10人+ ローカライズディレクター 1人 言語エキスパート(翻訳者) 13人 繁忙期に多くの問い合わせ(チャット経由が多い)が集中し、情報が埋もれてしまう → LOCOで直接、質問や不具合を管理 66 ここまでは、自動チェックによる品質管理について紹介しました。 しかし、すべての問題を自動で解決できるわけではありません。 次は、人による確認や相談が必要なケースを支援する機能について説明します。 統合課題トラッカーについて説明します。 よくある開発フローとして、 「ゲームテキストは複数のゲームデザイナーやアーティストが作成する」 「それを1人のローカライズディレクターが管理する」 「さらに多くの翻訳者が翻訳を行う」 という状況になりやすいです。 そのため、プロジェクトの後半になると、翻訳者からの問い合わせがローカライズディレクターに集中することがあります。 特にチャットでのやり取りでは、重要な情報が埋もれてしまうことがあります。 この問題を解決するために、LOCOではやり取りの内容をシステム上で管理できるようにしています。 66

68.

ローカライズの物量 統合課題トラッカー Issue検索 Issueリストと内容 紐付けているメッセージ 67 こちらが統合課題トラッカーの画面です。 質問や不具合、改善案などを、メッセージIDに紐付けて管理できます。 翻訳者は、翻訳・編集・テストの作業中に、そのまま対象の文字列について問い合わせできます。 また、不具合の報告や、原文に関する質問、修正の提案も同じ場所で行えます。 ローカライズディレクターは都合のよいタイミングで対応できるため、作業を中断する必要がありません。 さらに、すべてのやり取りが対象の文字列に紐付いているため、後から見ても、そのメッセージに関するやり取りを簡単に確認できます。 67

69.

ローカライズの物量 統合レポート よくある問題:定期進捗レポートを手作業でExcel作成する必要がある 手作業イメージ 手作業イメージ 各言語のステータス csv 1日目 各言語のステータス csv 2日目 Excelでレポート・グラフ作成 各言語のステータス csv 3日目 → DBからレポートを直接生成したい 68 ここまでは、ローカライズ作業を効率化する仕組みについて説明してきました。 同じように、進捗管理の作業もLOCOで効率化しています。 関係者向けの進捗レポートは、これまではローカライズ用のファイルから情報を集め、手作業でExcelにまとめていました。 しかし、この方法では作成に手間がかかる上、最新の状況を反映し続けるのも簡単ではありません。 そこでLOCOでは、データベースの情報から直接レポートを生成できるようにしています。 レポートはタイトル全体だけでなく、特定のグループ単位でも作成可能です。 68

70.

ローカライズの物量 統合レポート 文字数/単語数 69 ここからは、生成できるレポートの例を紹介します。 最新のデータベースの情報をもとに、各言語・各範囲の文字数や単語数をすぐに集計できます。 これにより、翻訳作業の規模を正確に把握できるため、 見積もりや進捗管理を効率的に行えます。 69

71.

ローカライズの物量 統合レポート ステータス統計 70 こちらは翻訳ステータスのレポートの例です。 翻訳済み・編集済み・チェック完了といった各ステータスの件数を、 全体または言語ごとに集計できます。 また、再チェックが必要な項目も含めて確認できるため、 現在の進捗状況や残っている作業をすぐに把握できます。 70

72.

ローカライズの物量 統合レポート ステータス推移 71 こちらはステータス推移のレポートの例です。 「OK」「再チェック」「バグ」などの件数を、 言語ごとに時系列で追跡できます。 そのため、QAの進捗だけでなく、 品質がどのように変化しているのかも確認できます。 71

73.

ローカライズの物量 API ・データにはAPI経由でアクセスできる ・他チームはテキストデータを取得し、独自分析に利用できる ・周辺データのアップロード・ダウンロードにも対応 72 最後に、APIについて説明します。 LOCOのデータは、すべてAPI経由でアクセスできます。 そのため、他チームは必要なデータを直接取得し、独自の分析やツール開発に活用できます。 また、テキストだけでなく関連データのアップロードやダウンロードも可能なため、 LOCOをさまざまなシステムと連携させることができます。 72

74.

ローカライズの物量 APIの活用例 ・タイトルによるテキストの自動チェック LOCO タイトルの 誤字・脱字チェック 商標・著作権チェック APIでテキスト取得 ・他セクションの作業の統合 追加・更新 サウンドの 波形ストレージ APIで同期 LOCO 73 APIの活用例を紹介します。 あるタイトルでは、APIを利用して、日本語の誤字・脱字を検出する独自のチェックを開発しました。 また、商標権、著作権上の問題がないかを確認するチェックにも活用しています。 LOCOのデータを直接利用できるため、必要なテキストを効率よく取得できます。 また、他チームとの連携にも活用されています。 例えばサウンドチームでは、新しい音声ファイルが追加・更新されると、APIを通じて自動的にLOCOへ登録される仕組みを導入しています。 これにより、LOCO上には常に最新の音声データが反映され、ユーザーはいつでも最新の音声を確認できます。 このように、LOCOはローカライズツールとしてだけでなく、他のシステムと連携できる共通基盤としても活用されています。 73

75.

74 ここまでカプコンのメッセージの運用とLOCOについて紹介してきました。 最後に、カプコンのローカライズの秘訣について簡単にまとめて終わりたいと思います。 74

76.

カプコンのローカライズの秘訣は? 必要な人が、必要な情報を素早く確認できる環境作り 翻訳に必要な情報が飛び込んでくるようにする ワークフローは疎結合に、連絡は高密度に 集中できる作業環境、省コストで正確かつ素早いフィードバック そのための自社ツール設計を妥協しない 足りない機能は自分達で作る、手間がかかる運用は継続的に見直す 75 カプコンのローカライズは、必要な情報が自然と入ってくる機能が必要不可欠でした。 翻訳前の原文だけでなく、関連する単語の表示、作業ミスの自動通知、画面のスクリーンショット表示など、 そういったLOCOの工夫は確認のための時間を最低限に抑えるために役立っています。 それに加えて、ワークフローは疎結合、連絡は高密度 というチーム作業の基本を突き詰める必要がありました。 各々が作業に集中して、かつ それでも作業漏れや連絡ミスを“仕組みで”防ぐのが重要です。 そのコストもLOCOが受け持つことで、生産力を最大化しています。 この環境を実現するために、最終的に内製のシステムを自作するという手段を取りました。 物量が多いからこそ、これらの効率化に対するコストを惜しまないこと。 それがカプコンのローカライズを支える秘訣です。 75