ゲームの多言語対応を進めるにあたり、Unity標準機能のFont Asset Creatorを使うことは必須なのですが、何度か使ってみてやっと考え方がわかってきたので簡単にまとめます。
これだけ覚えていれば大体対応できます。
Source Font File
フォントのソースファイル(ttf,ttc等)を指定します。
ソースファイルは事前にUnityのAssetフォルダのどこかに入れておきます。
「Font」フォルダを作っておくと管理しやすいでしょう。
Atlas Resolution
TextMeshProで使用する文字を画像にして保存する際の解像度をここで決めます。
今回は、日本語中国語英語の3カ国語に対応するため、最大値「8192」を選択します。
日本語と英語のみ対応であれば「4096」でも良いかもしれません。
Custom Character List
ゲームで使用する文字をここに入れ込みます。
とは言っても、何を使用しているのか、パッとわかるわけでもないので英数字+ひらがなカタカナ常用漢字をここに入れておきます。
①日本語をコピペ
とりあえずコピペで入れればOKです。
「Unity 日本語 Custom Character List」とかで検索すれば必ずヒットしますので、そこでコピーした文字列をCustom Character Listに貼り付けます。
②中国語の追加
中国語(簡体字)のCharacter Listは下記から入手しました。 https://github.com/wy-luke/Unity-TextMeshPro-Chinese-Characters-Set/blob/main/3500%E6%B1%89%E5%AD%97%2B%E7%AC%A6%E5%8F%B7%2B%E8%8B%B1%E6%96%87%E5%AD%97%E7%AC%A6%E9%9B%86.txt
Custom Character Listの日本語の続きにコピーした中国語を貼り付けます。
これで日本語・中国語・英語の3カ国語を一つのフォントで表示できます。
Generate Font Atlas
フォントアトラスを作成します。私のPC(MacBookPro M1Pro)では数分かかりました。
完了した後は忘れずに「Save」をしましょう。これでTextMeshProから今回作成したフォントが指定できます。
これで作業は完了です。
よくないパターン
文字起こしに失敗したパターンには注意してください。対応していないフォントを指定している可能性があります。
↓は、中国語に対応していないソースフォントファイルを指定してエラーが2042個も出てしまっています。
Comments