翻訳管理のCalliope

Calliopeタイトル

あなたのゲームを世界中のユーザに届けませんか?

世界中の人が自分のゲームを遊んでくれたらなぁ……と、野望を持ったことはありませんか?

実は私も密かにこの野望を抱いているのです。私はUnityでスマートフォン向けのアプリを作っているのですが、日本語のまま世界中のストアでリリースした時と、ローカライズしてリリースした時とでは、ダウンロード数に差がありました。

自分でローカライズした時に思ったのが、「翻訳データを切り替える機能って、ちょっと大変!」ということ。もちろんテキストを翻訳するのだって大変なのですが、せっかく作成したリソースを扱う部分もシステム化しないといけませんでした。

この部分を簡単に管理できないかなーと思って、まず上記のローカライズしたアプリでプロトタイプのシステムを作成し、それをアセットとして使える形にしました。

その名も『Calliope – Translation Manager』です。

CalliopeはUnityで翻訳を管理するためのツールで、エディタ拡張のウィンドウで翻訳リソース(テキストとか画像とか音楽とか)をリスト形式で管理できます。ゲーム実行中には、言語IDを切り替えることで動的に言語を切り替えることができます。

ゲーム内のリソースを翻訳・ローカライズする段階になって翻訳管理用のシステムを作るのは中々のコストです。ある程度ゲームシステムが固まってきて、必要なUIも決まって、じゃあ翻訳切り替えのシステムを……あれ? ここから2、3週間吹き飛ぶの? みたいな。

そんな時にサクッと翻訳管理システムを導入して時間を節約しようぜ! というコンセプトのもと生まれたのがCalliopeです。

Calliopeについて

Calliope(カリオぺ)はギリシャ神話に出てくる女神で、雄弁、弁舌を司る女神です。彼女の名前にあやかってこの名前を付けました。

海外製のゲームを私たちが遊んでいる時のことを思い出してください。ゲームシステム、グラフィック、BGM、どれをとっても素晴らしいゲームだったのに、ただ一点、ゲーム内の言語が日本語でなかったばかりに、ゲームのストーリーが理解できなかったり、UIで戸惑ったりした経験、ありませんか?

仮に翻訳されていても、なんだか自動翻訳で訳したような「んん?」となるような文章になっていたり。ゲームに没頭したいけれども、こうした面で気になって楽しみきれない、なんてのはユーザにとって勿体無いことです。

こういう細かいところって、デベロッパーからすると元の文章が頭に入っているからか、脳内補完して見逃しちゃったりするのですが、やっぱりユーザの立場だと気になっちゃうんですよね。

なので、自動翻訳ではなくて、人が翻訳したリソースを扱えるツールを届けたかったんです。人が翻訳し、心のこもった文章をユーザに届ける。女神・カリオぺが司る雄弁や弁舌の力が発揮できるツールにしたい! と思ってこのツールを作りました。

リストで管理できる

リストで管理
リストで管理

Excelでデータを管理するときのように表形式で翻訳データを管理することができます。

画面上のタブではTextImageAudioSpriteのどのリソースを設定するか選ぶことができます。それぞれ、各コンポーネントに対応しています。

Unity特有の情報としてどのシーンのデータなのかも入力できるようにしました。シーン名を入れておけば、『Scene』ボタンをクリックすることで、シーンごとにソートされます。

Keyはシーン内のどの情報なのかを入力できます。これも自分が分かりやすいように名前を入力できますし、ソートも可能です。

その右には最初に設定した言語の数だけカラムが並びます。ゲーム実行中には、言語設定が英語の時は英語のカラムに入力したデータ、言語設定が日本語の時は日本語のカラムに入力したデータがそれぞれ表示されます。

 

リソースをプレビューできる

イメージもプレビュー
イメージもプレビュー

Calliopeのエディタウィンドウ、そしてInspectorウィンドウで翻訳データのプレビューができます。

例えば上の画像ではImageの翻訳データを表示しています。すぐ確認できるため時間の節約に繋がります。

音楽もプレビュー

音楽だってプレビュー
音楽だってプレビュー

画像だけでなく、Audioのデータもプレビューできます。通常、Unityのエディタ上で音楽の再生を行う場合は、AudioSourceのデータを選択し、インポート設定の画面を開いてから再生ボタンを押します。

が、Calliopeではその作業を簡略化して、エディタ上の再生ボタンでそのまま試聴出来るようにしました。Audioデータのファイル名として分かりやすい名前が付いていれば良いのですが、中身は聞かないと分からないこともあるため、すぐに確認できるようにしています。

ゲーム実行中に切り替えられる

ゲーム実行中に簡単に切り替え
ゲーム実行中に簡単に切り替え

上の画像はデモシーンのものです。画面左に並ぶ言語ボタンをクリックすることで、サンプルのText、Image、Audio、Spriteを切り替えることができます。

シーンのリロードを行わずに切り替えられるようにしているので、ユーザがコンフィグ画面で言語を切り替えて即反映、みたいなことが可能です。

翻訳のメリット

しきりに翻訳、翻訳と叫んでみましたが、翻訳することのメリットについても考えてみましょうか。

多くのユーザにゲームを届けられる

日本だけでゲームをリリースするのであれば無理して翻訳する必要はないのですが、もしあなたのゲームが世界に羽ばたこうとしているのであれば、翻訳することでより多くのユーザにゲームを届けることができます。

自分で海外製のゲームを遊んだときのことを思い浮かべてみてください。その国の言語をマスターしていればスムーズにゲームの世界に没頭できますが、多くの場合は「えーと、この単語の意味は……」と思い出しながら、あるいはスマホで意味を調べながら内容を読み取っていることでしょう。

これってデベロッパーの視点では勿体無いことですよね。せっかくのゲーム体験が損なわれてしまいますし、その国のストアでリリースすることもためらわれてしまうかもしれません。

しかし、もしゲームが翻訳、正確にはその国の文化的な背景に合わせたローカライズが施されていれば、ユーザのゲーム体験が損なわれることはありません。

あなたは堂々とその国のストアにゲームをリリースできます。

たくさんのフィードバックをもらえる

多くのユーザにゲームを届けた結果、彼または彼女たちから多くのフィードバックをもらうことができます。

特にスマホ向けのゲームであれば、次回のアップデート時にフィードバックをそのままゲームに反映させることができます。これは非常に良いことです。

コンシューマ向けのゲームであっても、リリースしたゲームのフィードバックは次回作に活かすことができます。

フィードバックの中には、彼または彼女たちが暮らしている国の文化的な背景に関するヒントがあるかもしれません。日本のデベロッパーであれば、ゲーム内のキャラクターの行動原理は日本人の感覚に近いものになってしまうかもしれませんが、例えばアメリカの人から見たら「なんで?」となるかもしれません。これは文化的な背景が異なることが原因です。

分かりやすい例として、私たちがアメリカの映画、あるいはドラマを見たときの反応があります。これらのお話の中では、ところどころキャラクターがなぜそのように行動したのか、あるいはなぜそう考えたのか、いまいち掴みきれないことがあります。(今、この文章でも暗黙的に「私たち(日本人)がアメリカの映画〜」と使いました。これって知らずにやっちゃいますよね?)

これは彼らの行動の背景に、宗教的な戒律があったり、あるいは子供の頃に教わった道徳的な考え方があるためです。こうしたものは日本と共通ではない上に、暗黙的に使われていることが多いため、私たちにとっては「あれ?」と思う結果になることがあるのです。

フィードバックをもらうことで、彼または彼女たちが暗黙の了解としている知識を学ぶことができます。

もちろん、ローカライズをしようと思っているデベロッパーであれば、翻訳を担当する人にこうした暗黙の了解とされる知識を教えてもらうこともできます。その場合でも、想定される反応と実際の反応を比較し、ゲームに反映することは大きなメリットとなります。

ゲームの販売数、ダウンロード数が増える

海外製のゲームであっても、自然なローカライズがされていれば好意的にゲームを遊んでくれる人が多くなります。その結果、例えばレビューにはポジティブな感想が並び、それを見た人がさらに購入したり、ダウンロードしてくれる可能性が大きくなります。

デベロッパーにとって、自分のゲームを遊んでくれる人が増えることほど嬉しいことはありません。

ゲームを開発するのは簡単なことではありません。Unityというゲームエンジンを使うことで負担は減っていますが、それでも「簡単」なんて言えません。メッシュを用意して、シーンにオブジェクトを配置して、UIを配置して、あ、音楽もインポートしないと……、これが終わったらスクリプトをゴリゴリ進めて、やっとテスト……ああ、バグが! バグが!

こうして心血を注いで作り上げたゲームを遊んでくれる人がいる、この事実がデベロッパーの力になるのです。

もちろん、商業的な観点も忘れてはいけません。販売数、ダウンロード数は収益に繋がります。デベロッパーの相反する心として、「自分の作品を遊んでもらえるだけで満足です!」という高潔な心がある一方、「ゲームが売れなければ生活できない!」という俗な心があります。

継続的にゲームを開発していくために、あなたは明日を、いや今日を生き延びなければなりません。ゲームを作る技術を持ったあなたは、その強みを使ってお金を得ることができます。そのお金があなたの継続的なゲーム開発を支えてくれるのです。

翻訳のデメリット

もちろん、ローカライズすることのデメリットも忘れてはいけません。

翻訳はめんどくさい

身も蓋もないことを言いますが、翻訳は大変です。ああ、だから自動翻訳が使われるんだな、と負けを認めそうになるくらいには負担が大きいです。ほんやくコンニャクがあればいいのに、と何度願ったことか。(これも文化的な背景による暗黙の了解ですね)

ローカライズは、単純に言葉を翻訳すれば良い訳ではありません。上でも少し触れたように、ローカライズ先の言語が使われている国の文化を知り、そこに合わせた話の流れを作らなければなりません。場合によっては、日本語のテキストに入っていた例え話を差し替える必要だってあります。だってアメリカ人にドラえもんの話をしても伝わらないですもんね。

言葉だけではなく、好まれる色だって違います。色に対するイメージが異なるので、タイトルロゴの色を変更したり、ひょっとしたらUIの決定ボタンやキャンセルボタンも色や形を変える必要があるかもしれません。タイトルロゴに日本語が使われていたら、それも変える必要があります。

しかし、私たちはデベロッパーです。テキストの翻訳は専門家の方に任せることもできますし、色の調整もデザイナーさんに任せることができます。

翻訳はコストがかかる

上のめんどくささとも関連しますが、翻訳に掛かるコストを無視することはできません。

私たちデベロッパーは、自分の時間でそれを支払うか、専門家に依頼するお金で支払うかの選択を迫られます。デベロッパーにとっては時間の方が価値が高いはずですから、多くの場合は専門家に依頼することになるでしょう。

このコストを支払ってローカライズするのは、ゲームをプレイするユーザの心に届くメッセージを作るためです。

私たちがゲームで表示するメッセージを私たちの言葉で、私たちと同じ言語を使うユーザに向けて作るのと同じように、心を込めてローカライズする必要があります。この作業って、母国語でも結構大変ですよね? やはりそれなりのコストを支払う必要があるのです。

あと自動翻訳の話も出していますが、アプリ内でAPIを叩いて文章を送り、その結果を受け取るような形式(Google Translate APIなど)では送信した文字数に応じて課金されることを忘れてはいけません。リアルタイムに翻訳させる形だと、ユーザ数が増えれば増えるほどコストが増えることになります。

Calliopeがあなたのためにできること

翻訳のメリット、デメリットを挙げてみましたが、それでも私は翻訳・ローカライズをすることをお勧めします。

その理由は、ゲームは多くの人に遊んでもらってこそ輝くからです。国内の人に遊んでもらうための努力(広報や広告)はした上で、さらに多くの人に遊んでもらうためには、ゲームをローカライズして海外の人にも届けるのがベスト。

私の持論ですが、ゲームとはコミュニケーションツールです。ユーザ同士のコミュニケーションはもちろんのこと、デベロッパーであるあなたとユーザとのコミュニケーションを行うツールでもあるのです。

あなたはゲーム内であなたの世界を表現し、ユーザに楽しんでもらって最高の体験を届けています。ユーザはあなたの世界で遊び、あなたのメッセージを受け取るのです。そしてユーザは「面白かったよ!」という感想だったり、時にはアドバイスをくれるかもしれません。これを受けたあなたはゲームを改善していくことで、お互いにお互いを高め合うような関係となっているのです。

ゲームをローカライズすることで、このコミュニケーションの相手が海外のユーザにも広がります。あなたはゲームを通して異文化コミュニケーションを行うことになるのです。

Calliopeはそのコミュニケーションのお手伝いができます。自動翻訳はできませんが、心のこもった翻訳されたデータがあれば、あとはその管理を一手に引き受けます。専用のウィンドウでデータを管理し、ゲーム内では簡単にそれらのリソースを切り替えます。

誰におすすめ?

Calliopeは必ずしも全ての人に役立つツールではありません。

もしあなたが……

  • 日本でしかゲームをリリースしない……
  • 翻訳の質は度外視で自動翻訳でサクッと翻訳したい……
  • 翻訳しなくても海外の人は遊んでくれる……

と思っているなら、Calliopeはあなたのお役に立てないかもしれません。

しかし、もしあなたが……

  • 海外の人にもゲームを遊んでもらいたい!
  • 心を込めた翻訳リソースを扱いたい!
  • 多くの人からフィードバックをもらってゲーム作りの技術を向上させたい!
  • ゲームを通して異文化コミュニケーションを行いたい!

と思っているなら、きっとCalliopeはあなたのお役に立てます。あなたのゲームを翻訳するための最初の一歩を踏み出すのを後押しします。あなたの心を込めた翻訳データを使って、ユーザの心に響くゲームを届けましょう!

価格について

もしあなた自身、あるいはあなたのチームのメンバーが翻訳管理のツールを作る場合、どれくらいの工数で完成するでしょうか? 3週間……はかからないかもしれません。2週間、あるいはあなたの実力であれば1週間もあれば完成してしまうかもしれません。

あなたが1週間、翻訳管理のツール作成に時間を費やしたとして、掛かるコストはどれくらいでしょうか。私が想像するに、そう安くはないはずです。

Calliopeは現在14.99ドル(+税)で販売されています。日本円換算しても、ひょっとしたらあなたの時給に満たないかもしれません。1時間作業したのと同じコストで翻訳管理のツールが手に入るとすれば、あなたのプロジェクトの工数はどれだけ節約できるでしょうか。

30日間の返金保証

「そうは言っても、エディタ拡張のアセットは中身が分からないからなぁ……」

「買ったのに使えないアセットだったら嫌だなぁ……」

その気持ち、とてもよく分かります。私自身、他の人のアセットを買うときはためらうことがあります。

なので、実際にツールの機能を試していただけるように、返金保証を付けることにしました。

Calliopeをお使いいただいて、もしご満足いただけなかったり、あなたのお役に立てなかった場合は、ご購入日から30日以内にアセットストアで公開しているExplorers’ Labのメールアドレス、またはこのブログのお問い合わせフォームから私にご連絡ください。どのような理由であっても、返金の手続きに入ります。

その場合はアセット購入時に発行される領収書(Eメールで送信されています)に記載されたInvoice Number(請求書番号)をお知らせ下さい。その番号をこちらで確認後、Unityに返金処理を依頼します。Unityからあなたへの返金は10日以内が目安となっていますので、返金のお申し出後はしばらくお待ち下さい。

 

これで、あなたの金銭的なリスクは取り去りました。気軽にCalliopeを試していただいて、中身を確認してから使い続けるかどうか判断して下さい。

CalliopeはUnity Asset Storeからダウンロードできます。以下のアセットストアへのリンクをクリックし、ぜひ試してみてください。


あなたのゲームを求めている世界中の人々に、あなたのゲームを届けましょう!

 

 

P.S.

このページに書かれている言語を見てお分かりの通り、Calliopeは日本語でサポートを受けられます。Unity Asset Storeでは英語でのサポートとなるアセットが多数を占めていますが、Calliopeは日本語でサポートを受けられる珍しいアセットなので、その点もご安心いただけるかもしれません。

 

P.P.S.

このCalliopeはエディタ拡張のアセットなので、一度購入いただいたら複数のプロジェクトで使うことができます。あなたがたくさんゲームを作れば作るほど、このアセットの導入コストは下がっていきます。