TextMesh Pro
TextMesh Pro は、UnityやVRChatワールドにおいて高品質な2Dおよび3Dテキストを表示するためのツールです。現在、以下のコンポーネントがUdon向けに公開されています。
- TMP Text (TextMeshProUGUI および TextMeshPro)
- TMP Dropdown
- TMP InputField
VRChatの許可されたワールドコンポーネントから他のTextMeshProコンポーネントを使用することも可能ですが、それらはUdonでは利用できません。
Unityの組み込みテキストコンポーネントの使用は避けてください。
- Unityの組み込みテキストはエイリアシングが発生し、16250文字という制限があります。
- TextMesh Proはテキストのレンダリングがより高品質で、リッチテキストに対応しており、文字数制限もありません。
インストール
TextMesh ProパッケージはUnityエディタに含まれています。プロジェクトで初めて使用する際、Unityは「Assets」フォルダに必須ファイルを追加するよう促すメッセージを表示します。 例えば、TMPコンポーネントを新規作成すると、以下のようなプロンプトが表示されます。

TextMesh Proのアセットは、「Window」 > 「TextMeshPro」 > 「Import TMP Essential Resources」を選択することでもインポート可能です。
フォントのインポート
TextMesh Proには、「LiberationSans SDF」というデフォルトのフォントが含まれています。これを使用することで、すぐにTextMesh Proを使い始めることができます。
独自のフォントをTextMesh Proにインポートするには、font asset creatorを使用します。これにより、TextMesh Proコンポーネントで使用できるフォントアセットが生成されます。
フォントアセットは、ワールドのダウンロードサイズとRAMの使用量を増加させます。フォントをインポートする際は、アトラスの解像度を下げ、使用しない文字はインポートしないようにしてください。
VRChatの組み込みフォールバックフォントの使用
フォントをインポートする際、TextMeshProのフォントアセットには通常すべてのUnicode文字が含まれているわけではありません。ワールド内にフォントアセットに含まれていない文字列やユーザー名がある場合、TextMeshProはそれらを描画できません。例えば、「何?!」の代わりに「□□□」と表示されることがあります。
VRChatのTextMeshProフォールバックフォントを使用するには、「Project Settings」>「TextMeshPro settings」へ進み、「Fallback Font Assets」にあるすべての項目を削除してください。
これにより、TextMeshProコンポーネントがVRChatのフォールバックフォントを使用できるようになります。VRChatでワールドにアクセスすると、ほとんどのUnicode文字が正しく描画されます。

関連項目
- TextMeshPro documentation (Unity スクリプト API)
- Text in Unity - Working with TextMesh Pro (Microsoft Learn)
最終更新: