Unityのフォント追加方法・TextMeshProを日本語で使う方法

ころもちゃん

ゲームにいろんなフォントを使えるようにしたい!日本語も表示したい!

本記事の内容

・フォントを追加する方法
・TextMeshProを日本語で使う方法

目次

Unityにフォントを追加したい!

フォントはゲームの世界観を伝える重要な要素!

フォントは、ゲームの世界観を作る上で非常に重要な要素です。。
UNDERTALEのテキストは、フォントでキャラクターの性質を表現していますよね。

パピルスのテキストが縦書きなのもスキ!

スプラトゥーンでは、ゲームのポップで明るい雰囲気がフォントだけでも伝わってきますよね。

スプラトゥーンのUI

画像引用元

https://automaton-media.com/articles/newsjp/20230531-249693/
https://store-jp.nintendo.com/list/software/70070000016033.html

自分の入れたいフォントを、Unityに導入するための方法を解説します。

フォントを入手する

まずは、フォントのダウンロードです。
今回はGoogleFontsという無料サービスを使って、DotGothic(ドット文字のフォント)というフォントをダウンロードしました。

↓DL先リンク↓
https://fonts.google.com/specimen/DotGothic16
(右上のあるDownloadFamilyボタンからダウンロード出来ます)

また、フォントの配布先サイトなどの個人開発のオススメ素材配布サイトをこちらにまとめているので、よかったらこちらも見てみてください。

フォントをダウンロードするときは、対応文字を確認するとよいです。
日本語は、漢字を含めて非常に文字数の多い言語のため、ひらがなのみであったり、英字のみの対応としているフォントも多くあります。自分の作るゲームに合わせたフォントをダウンロードしましょう。

ダウンロードしたフォントをUnityにインストールする

こちらはフォントファイルを、Unityのプロジェクトウィンドウにドラッグアンドドロップするだけです。

フォントデータをUnityへインストール

このままでも、旧式のTextであれば使うことは可能ですが、TextMeshProを使う場合は、ひと手間加える必要があります。

TextとTextMeshProの違いについては以下の記事で解説しているので、わからない人は確認してください。

このままの状態だと、まだTextMeshProで先程インストールしたフォントを使うことはできません。

ダウンロードしたDotGothicというフォントデータがない

TextMeshProの日本語フォントデータを作る

では、先程インストールしたフォントデータを使うために、TextMeshPro用のフォントファイルを作成します。

TextMeshProで使われる文字を、Atlasデータ(文字をテクスチャ画像にまとめたもの)に変換する必要があります。
(このサイトは原理はともかく使い方を学ぼう!というサイトなので、大分説明端折っています。詳しくはこちらのサイトがわかりやすいです・・・)

株式会社サイバーエージェントゲー...
Unityにおける文字の描画と比較検証 Unityにおいて、文字を描画するだけでもいくつかの方法が挙げられます。本記事では、文字の各描画方法の説明とそれらの比較検証を行った結果を示し、Unityにおいて文字の描...

TextMeshPro用のフォントデータの作成手順は以下の通りです。

STEP
フォントアセットクリエイターを開く

画面上部の ウィンドウ > TextMeshPro > フォントアセットクリエイター を選択する。

STEP
(※日本語対応する場合)日本語で使用する文字情報の一覧をコピペ

こちらのサイトにアクセスし、日本語の文字コードの一覧を取得し、コピペします。
ここで選択した文字が、TextMeshProで使用出来る文字、ということになります。

Rawボタンを選択して、

表示されている文字をすべて選択して、右クリック+コピー(Ctrl + C)。

STEP
フォントアセットクリエイターを設定する

以下の通り設定をして、GenerateFontAtlasというボタンを押します。

設定項目設定値
Source Font File追加したフォントを設定
Sampling Point SizeAutoSizing
Padding5
Paccking Method高速
Atlas Resolution4096 * 4096
Chareacter SetCustom Charactors
Charactor ListStep2でコピペした日本語の文字一覧を貼り付け
RenderModeSDFAA
STEP
SaveAsボタンからフォントデータを保存

しばらく待つとフォントデータ(Atlasデータ)が作成されるため、SaveAsボタンを押して適当なフォルダにフォントデータを格納しましょう。
これで完了です!

Atlas Resoulutionの設定について。
モバイルゲームなどデータ容量を考慮したゲームを作る場合は、一番大きな8192×8192のサイズで作成することはオススメしません。フォントデータだけで100MBを超えてしまうため、アプリサイズを圧迫してしまったり、GitHub(プロジェクトデータの共有・共同編集などが出来るツール)と連携しずらくなるためです。
ただ、上記の日本語に対応する場合、4096×4096はないとフォントがキレイに表示できないので、4096にしています。日本語や漢字の数を絞るなどをして容量を減らす、という方法もあります。

これで準備は完了です。実際にTextMeshProでインストールしたフォントを使ってみましょう。

TextMeshProのテキストを表示する

TextMeshProを配置

ヒエラルキーウィンドウで右クリックし、UI > テキスト-TextMeshPro を選択します。

インスペクタウィンドウから、FontAssetに先程作成したフォントを設定。

画像に alt 属性が指定されていません。ファイル名: image-57.png

すると、取り込んだフォントのTextMeshProを表示することができました!凄いぜ!

まとめ

以上、フォントをUnityにインストールして、TextMeshProで使用する方法でした。
それでは素敵なゲーム制作ライフを!

この記事が気に入ったら
フォローしてね!

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

この記事を書いた人

ゲーム制作の敷居を下げ、もっと多くの人にゲーム作りを楽しんでもらうために、ゲームをカンタンに作る方法を”網羅的に”解説しています。
よかったらブックマークお願いします。

コメント

コメント一覧 (1件)

コメントする

目次