無料で日本語を表示できるフォントを利用する
TextMeshProでフォントを追加する手順です。
TextMeshProを使用する時に、初期で設定されているフォント「LiberationSans SDF」で日本語入力をすると、下記のように「あいうえお」が「□□□□□」四角で表示されてしまいます。このフォントは日本語に対応していないので、TextMeshProを使用してフォントを作成して使用します。
Font Assetを生成に必要なデータ
- Google Fonts からフォントデータのダウンロード
- 使用する日本語文字コードのダウンロード
フォント・日本語文字コードのダウンロード
Japaneseでフィルターをかけ、日本語に対応したフォントを選択します
今回は「Noto Sans JP」を選択します
画面右上の「Download family」を選択するとダウンロードされます
フォントのダウンロードはこれで完了です
有志の方がGitHubに公開されているので、こちらを利用させて頂きます。
https://gist.github.com/kgsi/ed2f1c5696a2211c1fd1e1e198c96ee4
画面右の「Download ZIP」を選択するとダウンロードが開始されます
日本語文字コード(ファイル内の文字をコピーして使用する)
japanese_full.tx
今回使うフォントデータ
Noto_Sans_JP/NotoSansJP-Regular.otf
UnityでFont Assetを生成する
Fontsフォルダを作成し、ダウンロードした「NotoSansJP-Regular.otf」をUnityのProjectへドラッグ&ドロップします
Window -> TextMeshPro -> FontAsset Creator
ウィンドウサイズが小さいと下部のボタンやアトラス画像が表示されないので、ウィンドウのサイズを大きく調整しましょう
項目 | 内容 |
---|---|
Source Font File | Unityに読み込んだフォント「NotoSansJP-Regular」をドラッグ&ドロップして登録します |
Sampling Point Size | Auto Sizing アトラスサイズに対して最大サイズで生成してくれる |
Padding | 5 |
Packing Method | Fast |
Atlas Resolution | 8192 x 8192 「Sampling Point Size」のサイズ指定が大きいとAtlasに入らない場合があります、生成後に結果画面(Character included)を確認しましょう |
Character Set | Custom Characters |
Select Font Asset | None |
Custom Character List | ダウンロードした「 japanese_full.txt」内の文字を全てをコピー&ペーストします。 |
Render Mode | SDFAA |
Get Kerning Pairs | オフ 文字と文字の間隔に影響するカーニングの設定 |
※生成が開始されますがAuto Sizeingの場合は生成に時間(数分)がかかります、point sizeを48などに設定して生成すると生成時間は短くなります。
画面右に表示浅れているのがフォントのアトラス画像です。
Generate Font Atlas ボタンの下に生成結果が表示されるので確認します。
Point Size
Auto Sizingで生成したので、Point Sizeは95で生成され、アトラス画像いっぱいに入るサイズになっています
Character Included
7150文字中7131文字アトラスに生成されました。
Missing characters
文字が無くアトラスに含まれなかった文字数です
Excluded characters
除外された文字数です
Characters missing from font file
フォントファイルに無く生成されなかった文字です、上記のMissing charactersの19件の内容が表示されます。
生成・保存したフォントになります。
Font Asset部分に生成した「NotoSansJP-Regular SDF」を設定します。
四角だった文字が表示され、日本語表示が出来ることを確認します。
環境
バージョン | |
---|---|
macOS | Monterey 12.6 |
Unity | 2021.3.9f1 |
TextMeshPro | 3.0.6 – April 22, 2021 |
チップ | Apple M2 |
コメント