クイックスタートガイド
このガイドでは、ローカライズされたアセットと文字列を持つ簡単なプロジェクトの設定方法を説明します。
1. Localization Settings を作成する
プロジェクトの Localization Settings は、1 つのアセットです。このアセットを作成するには、Edit > Project Settings > Localization を開いて Create をクリックしてください。
2. ロケールを作成する
ロケール (Locale) は地域を表します。アプリケーションをどの言語にローカライズするかなど、ローカライゼーションに関する設定が含まれます。
Locale Generator ウィンドウを開くには、Localization のプロジェクト設定 (メニュー: Edit > Project Settings > Localization) を開き、Locale Generator ボタンをクリックしてください。
ロケールを選択するには、ロケール名の横にあるトグルボックスにチェックマークを入れます。追加したいロケールの横のチェックボックスにチェックマークを入れ、Create Locales ボタンをクリックして、アセットを保存する場所を選択します。
3. デフォルトロケールを選択する
アプリケーションにデフォルトで使用させたいロケールが英語 (English/en) 以外の場合は、Locale Selectors を使用してデフォルトのロケールを選択します。これを行うには、Specific Locale Selector フィールドにそのロケールを追加してください。アプリケーションは、起動時および他のロケールが選択されていない時に、このロケールを使用します。
4. テクスチャのローカライゼーション: Asset Table Collection を作成する
アセットをローカライズする理由は様々です。例えば、異なる吹き替え (ナレーション) オーディオや音楽を再生したい場合や、書かれたテキストを含む (標識などの) テクスチャを変更したい場合などが考えられます。Localization のシステムは、Asset Table を使用してこれに対応しています。
以下は、アセットのテクスチャを任意のロケールの国旗に変更する手順です。
まず始めに Asset Table を作成する必要があります。これを行うには、Localization Tables ウィンドウ (メニュー: Window > Asset Management > Localization Tables) を開いてください。
- Asset Tables ウィンドウで New Table Collection タブを選択します。
- どのロケール用にテーブルを生成するか選択します。
- Type ドロップダウンメニューで Asset Table Collection を選択します。
- Name フィールドにコレクション名を入力します。
- Create を選択し、アセットを生成するディレクトリを選択します。
Edit Table Collection をクリックし、My Assets テーブルを選択してください。
テーブルには、ロケール毎に Key フィールドと値フィールドが含まれています。Unity は Key (キー) を使用して、ローカライズされたアセットを識別します。このチュートリアルでは、Key に Country Flag という名前を付け、+ ボタンを使用して Key のエントリーを追加します。
ロケール毎に Unity に表示させたいテクスチャを選択し、以下のように、テーブル内の対応セクションにそれをドラッグアンドドロップします。
5. テクスチャのローカライゼーション: ローカライズされたアセットを使用する
Unity は、ローカライズされたアセットに複数の方法でアクセスできます。このチュートリアルでは Localization システムが提供するコンポーネントを使用しているので、スクリプトを記述する必要は一切ありません。
シーンに UI Raw Image コンポーネントを追加します。Raw Image を使用するためには、プロジェクトに Unity UI がインストールされている必要があります。 Raw Image を追加し、GameObject > UI > Raw Image を開きます。Raw Image コンポーネントをローカライズするには、コンポーネントを右クリックして Localize をクリックしてください。
これにより、Localize Texture という新しいコンポーネントが追加されます。これは汎用的なローカライゼーションコンポーネントです。Localize オプションを使用してこれを追加すると、そのコンポーネントがローカライズされるように Unity が自動的に設定します。
Localized Asset Reference フィールドを使用して、Texture Asset Table に追加した Country Flag Key を選択します。
シーンを実行し、ゲームビューのロケール選択ドロップダウンメニューを使用して ロケール を変更します。全てが正しく設定されていれば、国旗が、Asset Table 内で割り当てられたテクスチャに変更されます。ゲームビューのメニューが表示されない場合は、Localization のプロジェクト設定 から表示をオンにできます。
ゲームビューのロケールメニュー を使用するとエディター上で言語を素早く変更できます。これは Edit > Preferences > Localization から有効化/無効化できます。
6. オーディオのローカライゼーション: ローカライズされたアセットを使用する
オーディオクリップのローカライズはテクスチャのローカライズと同じ手順で行うこともできますが、以下のように Inspector 内で、ローカライズされたアセットを作成して編集する方法もあります。
- Audio Source ゲームオブジェクト (メニュー: GameObject > Audio > Audio Source) を追加します。
- Audio Source コンポーネントを右クリックし、Localize をクリックします。
- Localized Asset Reference フィールドを展開します。
- Table Collection ドロップダウンメニューから My Assets テーブルを選択します。
- Add Table Entry をクリックし、名前を
National Anthem
に変更します。 - オーディオクリップを正しいロケールのフィールドにドラッグアンドドロップします。
7. 文字列のローカライゼーション: String Table Collection を作成する
まず始めに、String Table を作成する必要があります。これを行うには、Localization TablesWindow (メニュー: Window > Asset Management > Localization Tables) を開いてください。
- Asset Tables ウィンドウで New Table Collection タブを選択します。
- どのロケール用にテーブルを生成するか選択します。
- Type ドロップダウンメニューで String Table Collection を選択してください。
- Name フィールドにコレクション名を入力します。
- Create を選択し、アセットを生成するディレクトリを選択します。
Smart オプションを有効にすることでエントリーを Smart String としてマークします。 この例では Smart String リフレクションと Plural 機能を使用して以下のスクリプトから変数を出力します。
using UnityEngine;
public class Apples : MonoBehaviour
{
public int appleCount = 1;
}
以下の値を入力します。
ロケール | 翻訳 |
---|---|
English | {global.player-name} has {apple-component.appleCount:plural:an apple|{} apples} |
French | {global.player-name} a {apple-component.appleCount:plural:une pomme|{} pommes} |
Spanish | {global.player-name} tiene {apple-component.appleCount:plural:una manzana|{} manzanas} |
Japanese | {global.player-name}は{apple-component.appleCount}個のリンゴを持っています |
8. 文字列のローカライゼーション: String Table エントリーを使用する
UI テキスト要素をシーンに追加するには、GameObject > UI > Text を開きます。
Text コンポーネントを右クリックして Localize オプションを選択してください。Unity によって Localize String コンポーネントが追加され、その添付先ゲームオブジェクト用に自動的に設定が調整されます。Text コンポーネントに含まれる文字列型の値で String Table にも含まれるものがある場合は、これは Unity によって設定中に自動的に割り当てられます。それ以外の場合は、String Reference フィールドのポップアップを使用して値を割り当てることができます。
Local Variables フィールド内で Add (+) ボタンを押し、Object Reference を選択して Apples コンポーネントを Object Reference スロットにドラッグします。変数に apple-component という名前を付けてます。
9. ビルドのプレビューと設定
ローカライズされたアセットをプレイヤー内で使用するには、Addressables プレイヤーの内容がビルドされている必要があります。 これは Addressables ウィンドウの Window > Asset Management > Addressable Assets > Groups から、Build > New Build > Default Build Script をクリックすることで行えます。 Addressables ウィンドウはアセットのパッケージおよびホスト方法 (ローカルストレージ、あるいはリモートウェブサーバー経由など) の制御にも使用できます。