【補足】TextMeshProを日本語フォントに対応させる(Unity編)

Unity補足、TextMeshProを日本語フォントに対応させる
ゆくすぃ

ごきげんよう、Budding Lab.編集部のゆくすぃです!
ここでは、ゲーム開発に関する補足情報をお伝えしています!

Text や Button、Dropdown、Input Field など「TextMeshPro」を使うUIは、デフォルトでは日本語フォントに対応していません。

そこで、今回は「TextMeshProを日本語フォントに対応させる(Unity)」を解説します!

目次

日本語フォントに対応させる準備

これから、以下の手順で日本語フォントを使えるように設定していきます。

TextMeshProを日本語対応させる手順
  1. Google Fonts 等で利用可能なフォントデータを入手する。 参考URL:Google Fonts
  2. 入手したフォントデータをUnityのAssetsフォルダ内に保存する。
  3. Window>TextMeshPro >Font Asset Creatorで、フォントアセットに変換する。

参考URL:初心者向け!TextMesh Proで日本語を使おう(Unity Learning Materials)

STEP
Google Fonts等でフォントデータを入手する

Google Fontsは商用利用可能な無料のフォントデータです。今回は「Yusei_Magic」というフォントデータを利用して説明します。

フォントデータはzip形式でダウンロードされるので、使用する前に解凍しておきます。
zipファイルを解凍すると、中には「OFL.txt」と「YuseiMagic-Regular.ttf」が入っています。

  • OFL.txt:利用規約を記載したテキストファイル
  • YuseiMagic-Regular.ttf:フォントデータ本体
STEP
UnityのAssetsフォルダ内にフォントデータを保存する

解凍したフォントデータは、拡張子が「.ttf」や「.otf」のファイルになっています。

UnityのProjectウィンドウのAssetsフォルダ内に「Fontsフォルダ」を作成し、その中に「YuseiMagic-Regular.ttf」を保存します。

Fontsフォルダにフォントデータを保存
STEP
日本語文字コードのリストを準備する

後で、フォントアセット(拡張子が.asset のフォントファイル)への変換時に「日本語文字コード」のリストが必要になってきますので、先に準備しておきます。

今回は、以下サイトからリストをダウンロードさせていただきました。大変助かります!

リストはzip形式でダウンロードされるので、使用する前に解凍しておきます。
zipファイルを解凍すると、中には「japanese_full.txt」が入っています。

日本語フォントに対応させる

Unityエディター画面のツールバーでWindowを選び、開いたコンテキストメニューからTextMeshPro Font Asset Creatorをクリックします。

Font Asset Creatorを選ぶ

すると、Font Asset Creatorウインドウが開くので、以下のように入力します。

Font Asset Creatorウインドウで設定する事柄
  • Source Font File:準備したフォントデータ(今回は「YuseiMagic-Regular」)
  • Sampling Point Size:Auto Sizing
  • Packing Method:Fast
  • Atlas Resolution:8192 / 8192
  • Character Set:Custom Characters
  • Custom Character List:日本語文字コードのリストをコピペする
設定項目を入力する

以上の入力ができたら「Generate Font Atlas」をクリックします。すると、Unityがフォントアセットへの変換を開始します。なお、この処理にはしばらく時間がかかるので、焦らずに待ちましょう。

※「Generate Font Atlas」をクリックできなかった場合・・・

以下の手順を試してみてください。

STEP
Import TMP Essential Resourcesを開く

Unityエディター画面のツールバーでWindowを選び、開いたコンテキストメニューからTextMeshPro Import TMP Essential Resourcesをクリックします。

STEP
TMP Essential Resourcesをインポートする

Import Unity Packageウィンドウが開いたら、右下の「Import」をクリックして、TMP Essential Resourcesをインポートする。

TMP Essentioal ResourcesをImportする

処理が済んだら、Font Asset Creatorウインドウ下部の「Save」をクリックし、Assetsフォルダ内のFontsフォルダにフォントアセット(拡張子が「.asset」のファイル)を保存します。

フォントアセットを保存する

「Save」をクリックすると保存先フォルダが開く → 「保存」をクリック

フォントアセットの保存先を指定

Fontsフォルダ内に「フォントアセット:YuseiMagic-Regular SDF.asset」が保存された

フォントアセットが保存された
※いざ、TextMeshProを使ってみたら、文字化けしてしまった場合・・・

日本語文字コードのリストに漏れがあると、文字化けすることがあります。
別のリストを探して、コピペし直してみてください。

まとめ

2025年5月現在、Unity6でもTextMeshProはデフォルトで日本語フォントに対応していません。

しかしながら、日本国内でゲームをリリースする以上、日本語フォント対応は必須ですし、選べるフォントの種類が増えれば表現の幅も広がるので、ぜび設定してください!
この記事が少しでもお役に立てば嬉しいです。

以上、最後まで読んでいただき有難うございました!

よかったらシェアしてね!
  • URLをコピーしました!
目次