TextMeshProの基本


投稿日:2024年1月10日 | 最終更新日:2024年4月4日

TextMeshProの概要

TextMeshProは、Unityのテキスト表示の基本機能です。
最大の特徴は、端末が高解像の場合であっても、テキスト表示もそれにあわせてほぼ劣化なく高精度に表示されることにあります。
  元のサイズ
  高解像でもほぼ劣化がなく表示できます。

SDF

Text Mesh Proの高精細な描画の基盤となっているのが、「SDF(Signed Distance Field)」という技術です。
「輪郭線からの距離」を画像情報に記録して利用することで、単純に拡大するよりも劣化の少ない描画を実現しています。
詳細は、公式ドキュメントなどを参考にしてください。

おおっぱに言うと、輪郭線の距離を計算で出せるので拡大しても細かい値まで線を再現でき、内側か外側を正負で判別できるのでアウトラインやベベルなども柔軟に描画できるというものです。

マテリアルでこれを活用したエフェクトの設定が可能で豊富な表現が可能になります。

アウトラインとシャドウ

ベベル、

グロー

リッチテキスト

TextMeshProには豊富なリッチテキストタグが用意されていていて、文字単位で細かなテキスト表現の調整が可能です。

公式ドキュメント

TextMeshProとしてのドキュメントは次のようになっています。
TextMeshPro3.0のドキュメント。実質TextMeshProが個人製作だったころのサイトへのリンク集となる
TextMeshPro3.2のドキュメント。一部の機能が記載漏れがあったりするものの、実質これが基本?

UI ToolKitとの共通部分の公式ドキュメント

Unity公式ドキュメントのUI ToolKitの方に、共通機能の日本語ドキュメントがあります。

サポートされるリッチテキストタグ - Unity マニュアル
Font Asset Creator プロパティリファレンス - Unity マニュアル
スプライトをテキストに加える - Unity マニュアル

セットアップ

TextMeshProの初回セットアップが終わっていない場合は、セットアップ作業が必要になります。
Window > Text Mesh Pro > Import TMP Essential Resources を開いてください。


「Import TMP Essentials」をインポートして初回セットアップを終わらせてください。
すでにセットアップが終わっている場合は、ボタンがグレーアウトしています。
セットアップが終わっていない状態で、TextMeshProのコンポーネントがアクティブになっているシーンを開いて時も、初回セットアップツールが開きます。

セットアップをすると、Assets/TextMeshPro以下に、必要なアセットをがインポートされます。
セットアップ後に「Import Tmp Eamples Extras」選択すると、追加の拡張機能やサンプルがインポートされます。

Window > Text Mesh Pro

「Window >Text Mesh Pro」のコンテキストメニュー機能一覧です。

名前 概要
Font Asset Creator フォントアセットを作成するツール
Sprite Importer スプライト表示のためのアセットを作成するツール
Import Tmp Esscential Resources 上記のセットアップツール
Import Tmp Eamples Extras 拡張機能やサンプルのインポート
Project Files GUID Remapping Tool 旧式(2018のUnity公式になる前?)のバージョンのTextMeshProのプロジェクトから移行する場合に、
コンポーネントを新しいものに入れ替えるツール
Project Text Spacing Coversiton Tool 旧式(2018のUnity公式になる前?)のバージョンのTextMeshProのプロジェクトから移行する場合に、
行間や文字間の設定を調整しやすくするためのツール