本日は Unity の技術調査枠です。
Unity Localization を使ってプロジェクトをローカライズする方法を記事にします。
今回は Localization の永続変数ソースを使ってグローバル変数グループを参照する方法です。
前回記事
以下の前回記事の続きです。
bluebirdofoz.hatenablog.com
Persistent Variables source
Persistent Variables source はグローバル変数および LocalizedString ローカル変数と連携して、スクリプトなしでローカライズに引数を指定できる仕組みです。
エディターでは様々なデータ型の引数を構成したり、カスタム引数を作成したりできます。
docs.unity3d.com
Persistent Variables sourceの利用手順
初めにグローバル変数グループを作成します。
Asset フォルダで右クリックから[Create -> Localization -> Variables Group]で変数グループアセットを作成します。
作成したアセットの Inspector ビューを開き、[+]ボタンから変数と値を設定します。
今回は以下の変数を設定しました。
値名:pet 値(string):dog
作成した変数グループを Persistent Variables source のグローバル変数に登録します。
メニューから[Edit -> Project Settings]を開き、[Localization]タブから[String Database -> Smart Format -> Sources -> Global Variables]のリストを[+]ボタンで追加します。
追加データにグループ名と変数グループを登録します。
以下のグループ名としました。
グループ名:global
最後にこの値を参照するローカライズ文字列をテーブルに登録します。
メニューから[Window -> Asset Management -> Localization Tables]を開き、以下のフォーマットで値を参照するテキストを設定しました。
{global(グループ名).pet(値名)}
動作確認
シーンを再生して動作を確認します。
以下の通り、グローバル変数を参照して文字列を出力することができました。