Unityで日本語を表示することは、日本語を使用するゲームやアプリケーションを作成する際に非常に重要です。
しかし、TextMeshProのデフォルトでは日本語のフォントが用意されておらず、表示できません。

そこで本記事では、TextMeshProを使用して日本語を表示する方法について説明します。
TextMeshProの使用
プロジェクトビューから新規作成できます。

または、インスペクターからコンポーネントを追加しても良いです。

※もし存在しない場合は、package manager からインポートしましょう。

TextMeshProをシーンに追加すると、以下のウィンドウが出てくるので、インポートします。

日本語フォントの取り込み
日本語を表示するためには、日本語フォントが必要です。調べてダウンロードしましょう。
zipファイルを解凍して、.ttfファイルをunityのプロジェクトビューにドラッグ&ドロップします。

日本語を表示する際の注意点
フォントの種類によっては、日本語フォントを使用する際にライセンスの問題が発生することがあります。利用規約を確認して使いましょう。
日本語フォントの設定
取り込んだ日本語フォントを使えるようにします。
Window > TextMeshPro > Font Asset Creatorを開きます。

- Source Font File … 先ほどドラッグ&ドロップしたフォントを選択
- Character Set … Custom Charactersを選択

取り込みたい文字の設定
Custom Character Listに、取り込みたい文字を指定する必要があります。
日本語の一覧を作ってくれている方がいるので、こちらのページを利用します。
こちらのページのRawを押します。

このように日本語の一覧が表示されるので、ctrl + Aで全選択してコピーします。

Unityに戻って、Custom Character Listにペーストします。

これでGenerate Font Atlasをおすと、フォントアセットの生成が始まります。

注意点
Custom Character Listに漢字を入れると、漢字は種類が多いため、アセットの生成に時間がかかります。

今回は、平仮名だけ取り込みます。
完成
作成が完了したら保存して、TextMeshProのフォントを変更しましょう。

日本語が表示できました!

おわりに
TextMeshProの日本語化方法でした!
日本語に限らず、好きなフォントを取り入れてみましょう。