Version: 2023.1
言語: 日本語
Mesh Filter コンポーネント
C#スクリプトでメッシュを使う

Text Mesh コンポーネント (古い機能)

Text Mesh コンポーネントは、テキスト文字列を表示する 3D 物体です。

ノート: これは古いコンポーネントで、機能が限定されています。より最近の、全機能を備えたテキスト表示方法については、ユーザーインターフェース (UI) の作成 を参照してください。

Component > Mesh > Text Mesh から新しいテキストメッシュを作成できます。

プロパティ

プロパティ 機能
Text レンダリングされるテキスト
Offset Z 描画時に transform.position.z からオフセットをどの程度遠くに描画するか
Character Size 各文字のサイズ (テキスト全体を拡大縮小します)
Line Spacing どのくらいテキストの行間隔を空けるか。
Anchor テキストのどの箇所がトランスフォームの位置になるか。
Alignment テキストをどのようにそろえるか(Left, Right, Center)。
Tab Size タブ’\t’の挿入のスペースが数 これはスペースバー文字オフセットのマルチプラムです。
Font Size フォントのサイズ これは、ダイナミックフォントのサイズで上書き可能です。
Font Style フォントのレンダリングスタイル フォントをダイナミックフォントにしておく必要があります。
Rich Text チェックを入れた場合、テキストをレンダリングするときに有効なタグによる処理を行います
Font テキストのレンダリング時に使用する TrueType フォント
Color テキストを描画するときに使用されるグローバルカラー

詳細

テキストメッシュは、交通標識、落書きなどを描画するのに使用されます。テキストメッシュは、3D シーンにテキストを置きます。GUI 用の汎用 2D テキストを作成するには、代わりに GUI Text コンポーネントを使用します。

次の手順にしたがって、カスタムのフォントでテキストメッシュを作成します。

  1. エクスプローラー (Windows) や Finder (OS X) から Project ビュー に TrueType Font - a .ttf ファイルをドラッグして、フォントをインポートします。
  2. Project ビューで、インポートしたフォントを選択します。
  3. GameObject > Create Other > 3D Text を選択します。 カスタムの TrueType フォントで、テキストメッシュが作成されました。シーンビューTransform コンソールを使用して、テキストを縮小拡大し、移動することができます。

注意: もしテキストメッシュのフォントを変更したいなら、フォントプロパティコンポーネントを設定しておく必要があります。さらに、正しいフォントテクスチャをフォントマテリアルに設定しなければいけません。このテクスチャはフォントのアセットが展開される別画面で確認できます。もしテクスチャを設定し忘れたら、メッシュの中のテキストはブロック模様となり、アサインされません。

ベストプラクティス

  • 1001freefonts.com から無料の TrueType フォントをダウンロードできます (TrueType フォントが含まれているので、Windows フォントをダウンロードしてください)。

  • Text プロパティにスクリプトからテキストを入力する際は、エスケープ文字の “\n” で改行を作成できます

  • 簡単なマークアップを使用して、テキストメッシュのスタイルを変更することができます。詳しくは、テキストのスタイル のページを参照してください。

  • Unity のフォントは、レンダリングを行う前に、フォントグリフをテクスチャマップにレンダリングします。フォントサイズの設定が小さすぎる場合、これらのフォントテクスチャはブロック状に表示されます。TextMesh アセットはクアッドでレンダリングされるので、TextMeshとフォントテクスチャのサイズが異なる場合、TextMesh が正しく表示されない可能性があります。

TextMesh

Mesh Filter コンポーネント
C#スクリプトでメッシュを使う