Unity公式ローカライズ用パッケージが
出たぁ~~~!!(結構前)
あんまり個人製作でローカライズはしないと思うんですが、仕事だとかなりありがたい。
(ボタンのラベルとか、ロジックにな~んにも関係無いテキスト表示をコードで制御したくないし、真面目にローカライズの仕組み作ると地獄みがあるので本当に素晴らしいです。)
使い方とかは以下のブログ記事がとても親切で、おススメです。
解説の動画だと、日本語と英語で縦書き時の文字の向きを切り替える、というのをやっていましたね。
自分でもちょっといじったりしたところ、
- 言語ごとに、シリアライズ可能な部分を切り替えられる。
みたいですね。なので、言語ごとにフォントを切り替える、というのももちろん可能。(これは試してみた) Unity上で考えられる一番柔軟なつくりって感じで素敵ですね。
また、デフォルトではTexture、String、AudioClip等のローカライズが可能ですが、MonoBehaviourのローカライズのための基底クラスが公開されてるっぽいので、それを継承すれば任意のMonoBehaviourのローカライズをカスタマイズできそうですね。必要かどうかはわかりませんが……
作り自体は言語ごとのDictionaryを作って、同じKeyから、それぞれのDictionaryを引くというわかりやすいものなので、使う分には理解しやすいパッケージだとも思います。
これでまた、ロジックに関係のないコードを抹殺することができてうれしい限りです。