【Unity】TextMeshProの日本語フォント対応

はじめに

本記事はちょっとした宣伝も含みます。

Unityを使ってゲームを作ろうと思った日本人が早々にぶち当たる壁。

それがTextMeshProによる日本語の表示。

Unityに取り込まれたことによってテキスト表示の標準のような顔をしつつ、いざ日本語を表示しようとすると文字化け。

どうやれば表示することができるんだ? と調べてみると

1.フォントファイルの用意
→フリーフォントの検索が必要

2.文字セットの準備
→使用してる文字なんて数えてない

3.FontAssetCreatorの使用方法の把握
→なんかよくわからんけど大きめ8192 ✕ 8192にすりゃいいのか?と思ったら作成したアセットが100MBを超える悲劇

という学習コストと心理的ハードルが高い状態になっています。
ちゃんと把握して慣れれば全然大した作業ではないのですが(面倒は面倒ですが)、初心者にとっては割と高い壁になっていることは想像に難くありません。

Unityさんに標準で日本語フォントを実装していただきたいところですが、日本語は英語に比べれば所詮ローカル言語なので、まぁ優先度が低いというのもわからなくはない。

フォントアセットのダウンロード

御託はいいから、すぐに日本語を使えるアセットをよこせ!という方は下記から持っていってください。

M_PLUS_1pという標準的な使いやすいフォントをFontAsset化したものを試用版からダウンロードできます。

TMP(Text Mesh Pro) Japanese Font - 猫小屋 - BOOTH
TMPJPFontSetはTextMeshProでそのまま使用できるフォントアセットのセットです。 SceneにTextを配置し任意のフォントをFont Assetに設定することですぐに日本語を表示することができます。 TextMesh P...

有料でGoogleフォントを中心に50フォントほどのFontAsset化したものもあるので興味あればこちらもお願いします。

他にはアセットストアでフォントアセットを公開している方もいらっしゃいます。

Selected U3D Japanese Font | 2D Fonts | Unity Asset Store
Elevate your workflow with the Selected U3D Japanese Font asset from FutureCartographer. Find this & more Fonts on the U...

文字セットの作成

上記だと無駄な文字が多くて嫌!最低限の文字で自分用のアセットを作りたい!

という方は文字セットの作成が必要になります。

前述の「2.文字セットの準備」の作業ですね。

この作業を楽にするツールを下記記事にて紹介しています。こちらのツールのDLは無料ですので使えそうだと思った方はぜひご活用ください。
(自分でも使ってますが結構いい感じだと思います)

さいごに

せっかくUnityでゲームを作ろうと思い立ったのに、ゲーム制作の本質ではないところで止まってしまうのはもったいないです。

ゲーム自体に力を注げるよう、日本語対応周りの作業ハードルが低くなることを願います。

コメント

タイトルとURLをコピーしました