Unity Localizationパッケージの使い方と設定方法

Unity Localizationパッケージを使ってゲームを多言語化する方法を解説します。インストールから設定、文字列や画像のローカライズまでの手順を紹介しますが、実際に使ってみるとどうでしょうか?

Unity Localizationの使い方

Unity Localizationパッケージの概要
🌍
多言語対応

文字列や画像アセットを複数言語に対応

🔧
簡単な設定

Unity内で直感的に多言語設定が可能

📊
効率的な管理

言語リソースを一元管理し、更新が容易


マンガでわかる Unityゲーム開発入門

 

Unity Localizationパッケージのインストール手順

Unity Localizationパッケージを使用するには、まずプロジェクトにインストールする必要があります。以下の手順でインストールを行いましょう。

  1. Unity Editorを開き、「Window」→「Package Manager」を選択
  2. Package Managerウィンドウで「Packages: Unity Registry」を選択
  3. 検索バーに「Localization」と入力
  4. 表示された「Localization」パッケージの「Install」ボタンをクリック

 

Unity 2021.2以前のバージョンを使用している場合は、以下の方法でインストールします。

  1. Package Managerウィンドウで「+」ボタンをクリック
  2. 「Add package from git URL」を選択
  3. 表示されたテキストボックスに「com.unity.localization」と入力し、「Add」をクリック

 

インストールが完了すると、Localizationパッケージの機能が利用可能になります。

 

Localizationパッケージのインストール方法や基本的な使い方について詳しく解説されています。

 

Unityプロジェクトでのロケール設定方法

Localizationパッケージをインストールしたら、プロジェクトでのロケール設定を行います。

  1. メニューバーから「Edit」→「Project Settings」→「Localization」を選択
  2. 「Create」ボタンをクリックし、Localization Settingsアセットを生成
  3. 「Locale Generator」ボタンをクリックしてLocale Generatorウィンドウを開く
  4. 使用したい言語にチェックを入れ、「Generate Locales」ボタンをクリック
  5. 生成されたLocaleアセットの保存場所を選択

 

次に、デフォルトのロケールを設定します。

  1. Localization Settingsウィンドウで「Specific Locale Selector」フィールドを選択
  2. デフォルトとして使用したい言語を選択
  3. 「Project Locale Identifier」フィールドも同じ言語に設定

 

これらの設定により、アプリケーションの初回起動時やアクティブなロケールが選択されていない場合に使用されるデフォルトのロケールが決定されます。

 

Unity Localizationでの文字列ローカライズ

文字列のローカライズは、String Table Collectionを使用して行います。

  1. Project ウィンドウで右クリック→「Create」→「Localization」→「String Table Collection」を選択
  2. 作成されたString Table Collectionアセットをダブルクリックして開く
  3. 「Add New Entry」ボタンをクリックし、新しいエントリーを追加
  4. 「Key」フィールドにユニークな識別子を入力
  5. 各言語の列に対応する翻訳テキストを入力

 

UIテキストにローカライズされた文字列を適用するには:

  1. TextコンポーネントのInspectorで「Localize」ボタンをクリック
  2. 「String Table Collection」フィールドに作成したString Table Collectionを割り当て
  3. 「Entry」フィールドで使用するキーを選択

 

これにより、言語が切り替わると自動的にUIテキストが更新されます。

 

Unity Localizationでの画像アセットのローカライズ

画像アセットのローカライズは、Asset Table Collectionを使用して行います。

  1. Project ウィンドウで右クリック→「Create」→「Localization」→「Asset Table Collection」を選択
  2. 作成されたAsset Table Collectionアセットをダブルクリックして開く
  3. 「Add New Entry」ボタンをクリックし、新しいエントリーを追加
  4. 「Key」フィールドにユニークな識別子を入力
  5. 各言語の列に対応する画像アセットをドラッグ&ドロップ

 

UIイメージにローカライズされた画像を適用するには:

  1. ImageコンポーネントのInspectorで「Localize」ボタンをクリック
  2. 「Asset Table Collection」フィールドに作成したAsset Table Collectionを割り当て
  3. 「Entry」フィールドで使用するキーを選択

 

これにより、言語が切り替わると自動的にUIイメージが更新されます。

 

Asset Localizationの詳細な手順と、スクリプトからのローカライズ方法について解説されています。

 

Unity Localizationのテスト方法とデバッグ

ローカライゼーションのテストとデバッグは、開発プロセスの重要な部分です。Unity Localizationパッケージには、これを支援するいくつかの機能が用意されています。

  1. エディター内言語切り替え

    • Game ビューの上部に表示される言語選択ドロップダウンを使用
    • リアルタイムで言語切り替えの結果を確認可能

  2. Pseudo-localization(疑似ローカライゼーション)

    • 翻訳前にUIレイアウトの問題を発見するための機能
    • 設定方法:
      a. Localization Settingsで「Pseudo Locale」を有効化
      b. 使用したいPseudo-localizationの種類を選択(Accented、Mirrored、Expander)

  3. スクリプトでのデバッグ

    • LocalizationSettingsクラスを使用して、現在のロケールを取得・設定
    • StringTableクラスを使用して、特定のキーに対する翻訳を取得

using UnityEngine

using UnityEngine.Localization
using UnityEngine.Localization.Settings

 

public class LocalizationDebugger : MonoBehaviour
{
void Start()
{
// 現在のロケールを取得
Locale currentLocale = LocalizationSettings.SelectedLocale
Debug.Log($"Current locale: {currentLocale.Identifier}")

 

// ロケールを変更
LocalizationSettings.SelectedLocale = LocalizationSettings.AvailableLocales.GetLocale("ja")

 

// 特定のキーの翻訳を取得
var stringTable = LocalizationSettings.StringDatabase.GetTable("MyStringTable")
string translatedText = stringTable.GetEntry("MyKey").GetLocalizedString()
Debug.Log($"Translated text: {translatedText}")
}
}

  1. CSVエクスポート/インポート

    • String Table CollectionをCSVファイルにエクスポートし、外部で編集後再インポート可能
    • 大量のテキストを効率的に管理・編集するのに有用

  2. アドレッサブルシステムとの連携

    • Localizationパッケージはアドレッサブルシステムを利用しているため、ビルドサイズの最適化が可能
    • 必要な言語リソースのみをダウンロードする仕組みを実装可能

 

Unity Localizationのスクリプト関連の詳細な使用方法と、アドレッサブルシステムとの連携について解説されています。

 

Unity Localizationパッケージを使用することで、効率的かつ柔軟な多言語対応が可能になります。適切な設定とテストを行うことで、グローバル市場に向けたアプリケーション開発がスムーズに進められるでしょう。

 

ローカライゼーションは単なる翻訳以上の作業であり、文化的な配慮も必要です。例えば、日付や時刻の表示形式、数値のフォーマット、通貨記号なども地域によって異なります。Unity Localizationパッケージでは、これらの細かい部分まで考慮したローカライズが可能です。

 

また、ゲーム開発においては、ボイスオーバーや字幕のタイミング調整なども重要になってきます。Unity Localizationパッケージと他のUnityの機能を組み合わせることで、これらの課題にも対応できます。

 

最後に、ローカライゼーションは継続的なプロセスであることを忘れないでください。新しいコンテンツの追加や既存の翻訳の改善など、常にメンテナンスが必要です。Unity Localizationパッケージを活用し、効率的なワークフローを構築することで、多言語対応のプロジェクトを成功に導くことができるでしょう。

Unity本をタダで読む&安くゲットする方法

Unity本
マンガでわかる Unityゲーム開発入門


実は、こちらの本はamazonのkindleアンリミテッドでタダで読めます。


でもそれ以外の分厚いUnity本は、アンリミテッドの対象外。良いのはわかるけど、高い!


Unity本


そこで、2,550円引きでほしいUnity本をゲットする方法です。


この方法だと、完全に0円でゲットできます。



定価2,520円の本に2,550円割引が効く=0円です。


やり方
 ↓


DMMブックスのクーポンと特典を併用します。


90%オフクーポン


実は、DMMブックスは利用者を増やすために初回90%オフ(最大2,000円引き)のクーポンを配ってます。初回利用なら、誰でも使えます。


さらに、DMMプレミアムという動画サブスクを無料お試しすると、こちらも特典として550ポイント(550円相当)もらえるんですね。


クーポンと特典合わせて2,550円引きでUnity本が買えるというわけ。


詳しくはこちらの記事にまとめました。


関連)クーポンと特典で、2550円引きで電子本をゲットする方法