トップ > 開発の森 > TextMeshProフォントアセットの作り方
unityで日本語の文字を表示させたい場合、現在主流のTextMeshProという型では、別途「フォントアセット」というものを作成しなければいけません。
その作成が少し試行錯誤を要したので、私の環境でうまくいった方法を記録しておきます。参考になれば幸いです。
※ちなみにかつてのTextと比べて少し面倒ではありますが、一度フォントアセットとして文字データを焼き込んでしまえば、
どんな環境(webブラウザ上とか)でも文字化けせずにキッチリ文字が出るので、こっちの方が安心感があります。
その1:準備するもの
まず、↓のような日本語対応のフォントデータ(拡張子が「.ttf」のファイル)を準備します。

次に、プログラムで使う"全ての"文字をメモ帳に書き出しておきます。
※例えば、「リセット」「開始」「一時停止」というボタンを作る予定ならば、「リセット開始一時停止」とメモ帳に入力しておきましょう。
もし、どの文字を使うか決まっておらず、一括ですべての日本語文字を登録したい場合は、
などから日本語の文字列データを一括ダウンロードすることもできます。
右上のDownload zipをクリックするとzipファイルがダウンロードできるので解凍しておきましょう。
その2:フォントアセットの作成と使用
まず、unityのプロジェクト画面を開き、Assetsに該当のフォントファイルを入れておきます。

次に、「Window」→「TextMeshPro」「FontAssetCreator」を開きます。

設定画面が開いたら、下記のように設定します。
◆SourceFont → Assetsからフォントファイルをドラッグアンドドロップ
◆CharacterSet → CuntomCharactersにする
◆CuntomCharacterList → メモ帳に入力した文字列をコピペする
設定ができたら、最後に「GenerateFontAtlas」を押すと、ちょい長めの処理が始まるので待ちましょう。

処理が完了したら、「Save」を押して、適当な場所(該当プロジェクトのAssets内とか)に保存します。

保存した場所に、新たにこんな感じのフォントアセットがあれば成功です!(焼き込み完了!)

このフォントアセットを適当なTextMeshProコンポーネントにアタッチすることで、
プロジェクト内に日本語フォントを表示させることができます!


ということで、今回はTextMeshPro用のフォントアセット作成について説明しました!
TextMeshProは、理系学生が卒論で2000回は入力する「上付き文字」や「下付き文字」を簡単に設定できるなど便利みたいです!
最後まで読んでいただきありがとうございました!
...ちなみにWordで上付き&下付きにしたいときは、私はショートカット「Ctrl」と「+、-」をめっちゃ使ってました笑