docs.unity3d.com
    目次を表示する/隠す

    Localization 設定

    Localization 設定の Inspector ウィンドウは、ローカライゼーションに関わる全ての設定へのアクセスポイントです。ここには、プロジェクトの Project Locale や Asset Table にアクセスできるインターフェースが提供されています。

    設定にアクセスする

    Localization 設定を使用するには、Edit > Project Settings > Localization を開いてください。

    設定アセットが存在しない場合は、作成を促すプロンプトが表示されます。

    Localization 設定の新規作成プロンプト

    設定アセットは Assets メニューからも作成できます。Assets > Create > Localization > Localization Settings の順に選択してください。

    デフォルトの Localization 設定

    Available Locales

    Available Locales には、ビルドされたプロジェクトがサポートする ロケール のリストが含まれています。 これはデフォルトでは Addressable システムを使用してロケールをフェッチします。ただし、ILocalesProvider を実装するクラスを作成して、これを完全にカスタマイズすることもできます。

    Locale Generator ウィンドウ

    ロケールを作成するには、Available Locales エディター内の Locale Generator ボタンをクリックしてください。

    Locale Generator ウィンドウ

    Locale Generator は、選択してプロジェクトに保存できる既知のロケール一式を提供します。

    Locale Source フィールドを使用して、Unity がロケールのリストを生成する基となるソースを設定します。これらの既知のロケールは CultureInfo クラスか Unity の SystemLanguage enum から収集されます。

    ロケールを選択するには、名前の隣にあるチェックボックスにチェックマークを入れてください。希望のロケールを選択したら Create Locales ボタンを押します。これにより、各ロケールがアセットとしてプロジェクト内に保存され、Addressable アセットとしてマークされます。既にプロジェクトに含まれているロケールはチェックマークが付いて無効化されます。 Locale アセットは Addressables に追加/削除できます。Remove Selected ボタンをクリックして削除、追加 (+) ボタンで追加、あるいは Add All ボタンでプロジェクト内の全ての Locale アセットを自動的に追加できます。

    Unity がプロジェクト内のアセットファイルとしてロケールを生成します。

    Locale Selector

    Locale Selector は、アプリケーションの初回起動時やアクティブなロケールが選択されていない時に Unity が使用するロケールを指定します。例えばデフォルトロケールを使用したり、プレイヤーが他のデバイスで使用しているロケールの使用を試みることもできます。

    Localization 設定は、リスト内の各セレクターを先頭 (インデックス 0) からクエリします。セレクターが null を返した場合は次をクエリし、有効なロケールが見付かるかリストの最後に到達するまでこれを続行します。これにより、Unity が使用するロケールを選択する時のフォールバック動作の作成が可能になっています。

    Asset Database

    Asset Database は様々な Asset Table および後続のアセットを取得する役割を持っており、これには Addressable Assets システムを介したクエリと読み込みが含まれます。 Default Table フィールドには、デフォルトの Asset Table 名を設定できます。これはその後、明示的なテーブル名を指定せずにアセットを読み込む時に使用できます

    String Database

    String Database は、様々な String Table とそれに属するローカライズ済み文字列を取得する役割を担っています。

    Default Table フィールドには、デフォルトの String Table 名を設定できます。これはその後、明示的なテーブル名を指定せずに文字列を読み込む時に使用できます。

    No Translation Found Format フィールドには、ローカライズされていない値に対して返される文字列を設定できます。

    Project Locale

    Project Locale には、デフォルトのロケール (アプリケーションの開発に使用されたロケールなど) を設定します。このプロパティは主に Localized Property Variants システムによって使用されます。

    Initialize Synchronously

    アプリケーションの開始時、あるいは選択ロケールの変更時には、Localization システムは自動的に初期化される必要があります。初期化の処理には、サポートされたロケールの読み込みと、Srting Table および Asset Table のプリロードが含まれます。これはデフォルトでは Unity の実行中にバックグラウンドで非同期的に実行されます。Initialize Synchronously を有効にすると、初期化が完了するまでメインスレッドがブロックされます。これによりローカライゼーションの初期化操作が強制的に即時完了されます。操作の完了には WaitForCompletion メソッドが使用されます。これは WebGL ではサポートされていないことに注意してください。

    Smart Format の設定

    Smart Format セクションでは、Smart String の構文解析時および書式設定時の動作を設定できます。

    Smart String の設定は、Project Settings (Edit > Project Settings) の Localization タブ内で行えます。

    Project Settings ウィンドウに表示された、Localization 設定内の Smart Format 設定項目

    Settings

    Settings セクションには、Smart String の構文解析と書式設定の方法を設定する、一般設定項目が含まれています。

    フィールド 説明
    Format Error Action
    Parse Error Action
    Error Action (エラーアクション) は、構文解析 (文字列のトークンの解釈) 中および書式設定 (構文解析されたトークンの文字列値への変換) 中のエラーに対する Unity の反応を指定するものです。

    以下のいずれかを選択できます。
    • ThrowError: 例外を投げます。これがデフォルト値で、書式設定エラーが簡単に発見できるのでデバッグに推奨されます。
    • OutputErrorInResult: 書式設定された文字列内にエラーメッセージを含めます。
    • Ignore: エラーを無視し、データの出力を試みます。
    • MaintainTokens: 無効なトークンを修正せずにテキスト内に残します。
    書式設定や構文解析のエラーをトレースするには、対応のイベント (以下) にサブスクライブします。:
    Smart.Default.OnFormattingFailure
    Smart.Default.Parser.OnParsingFailure
    これらのイベントは、全てのエラーおよびエラーアクションの値に対して発生します。このため、エラーへの対処方法をコード内で指定することができます。
    Case Sensitivity プレースホルダーの大文字と小文字を区別するかどうかを指定します。
    Convert Character String Literals リテラルテキストとは、プレースホルダーではない、置換されないテキストです。この項目を有効にすると、リテラルテキストが C# 文字列として扱われ、エスケープシーケンス が変換されます。例えば \n は新しい行になり、\t はタブに変換されます。

    Parser

    Parser (パーサー) は、Smart String を、Source および Formatter によって解釈可能な (また場合によっては、ネストされた書式項目の処理時に更に構文解析可能な) 一式の書式項目に変換する役割を担っています。

    フィールド 説明
    Opening Brace
    Closing Brace
    Opening Brace とClosing Brace は、書式項目 (Format Item) の開始と終了を示すために使用されます。デフォルトでは、String.Format と同じ括弧 { } が使用されます。

    例:
    Some text {0}
    Alphanumeric Selectors 有効にすると、セレクターに、a-z および A-Z の範囲内のアルファベットのセレクターを含めることができます。
    例:
    Some text {FormatItem}
    Allowed Selector Chars 数学などの追加的なセレクター構文をサポートするためにセレクターに含めることができる、追加的な文字のリストが含まれています。
    Operators セレクターとセレクターの間に来る文字のリストが含まれています。例えば ドット表記の場合は "." 、配列の場合は [ ]、あるいは数学記号の場合もあります。
    Alternative Escaping Smart Strings are a replacement for string.Format. Therefore, curly braces are escaped the string.Format way. So if the desired output is {literal}, double the open and closing curly braces to be {{literal}} instead. This string.Format compatibility, however, causes problems when using SmartFormat's extended formatting capabilities, for example the following would not work: {0:{Persons:{Name}|, }}.

    The reason is the double curly braces at the end of the format string, which the parser will escape, leading to a missing closing brace exception.

    This issue is solved by using an alternative escape character instead. When enabled and you wish to treat a double curly brace as literal it should be preceded by a backwards slash (\). So the following would be treated as literal: "\{literal\}".
    Alternative Escape Char セレクター括弧ではなくリテラル文字として扱うべきであることを示すために、開始と閉じの波括弧と接続して使用する文字です。

    Sources

    セレクター を評価する時に考慮すべきソースです。

    ソースは、リストの先頭にある最初の項目から下に向かって順に評価されます。ソースの順序によって結果の文字列が変わる場合があります。

    Formatters

    使用可能な フォーマッター です。

    トップに戻る
    Copyright © 2023 Unity Technologies — 商標と利用規約
    • 法律関連
    • プライバシーポリシー
    • クッキー
    • 私の個人情報を販売または共有しない
    • Your Privacy Choices (Cookie Settings)