Open3
【Unity】Localization

Locale
Localとは
Locale
はScriptableObject
を継承したアセットで、日本語、英語、中国語(簡体字)…のようにアプリで対応したい言語ごとに作成する.
プロパティ
プロパティ | 説明 |
---|---|
Locale Name | ロケールの名前.言語選択メニュー内などで、ユーザー向けにロケール名をどのように表示するかをカスタマイズできる. |
Locale Code |
[language]-[region] という形式のカルチャ名です。この名前は、ISO 639 の (2 つの小文字から成る) 言語に関連付けられたカルチャコードと、ISO 3166 の (2 つの大文字から成る) 国または地域に関連付けられたサブカルチャコードを組み合わせたものです。例えば、Language English は en 、Regional English(UK) は en-GB 、Regional English(US) は en-US です。非標準の識別子を表す場合は任意の文字列の値が使用可能です。 |
Culture Info | このフィールドには、Locale Code に一致する Culture Info が表示されます。 |
Use Custom Formatter | Smart Strings を使用して地域毎の書式設定を適用すると、Culture Info が使用されます。これは、時刻、日付、通貨、数字などの書式設定を制御します。Custom Formatter フィールドを有効にすると、異なるフォーマッターを使用してロケールを変更できるようになります。 |
Custom Formatter Code | 地域毎の値の書式設定に使用できる、[language]-[region] という形式のカスタムコードです。 |
Sort Order | Sort Order を使用して、リスト内で並べ替えされたロケールの並び順をオーバーライドできます。このリストの並び順は、言語選択メニュー内のロケールの表示に使用できます。両方のロケールが同じ Sort Order を持っている場合、それらは Locale Name に基づいて並べられます。デフォルトでは、ロケールは Sort Order が最小のものから昇順で並べられます。 |
Metadata | これはロケールに追加的なメタデータを添付するために使用します。このロケールはランタイムでスクリプトで使用できます。 |
Localの作成
GUIから作成する
Localization Setting
アセットのインスペクタ、もしくはProject Settings
から以下のポップアップを表示して、デフォルトのLocale
を追加することができる.
スクリプトから作成する
Localの取得
利用可能なロケール一覧は LocalizationSettings.AvailableLocales.Locales
で取得することができる.
List<Locale> locals = LocalizationSettings.AvailableLocales.Locales;

String Reference
スマート

String Table
String Table Collection
String Table Collection
はString Table
とShared Table Data
の2つの部分から構成されます.ある Collection
に対して各ロケールが1つのTable
を持ち,Collection
内で共有して参照されるキー名やId値,共有メタデータなどがShared Table Data
に格納されます.
以下はこれらの関係性を表す図です.