Version: Unity 6.1 Alpha (6000.1)
LanguageEnglish
  • C#

TextMesh

class in UnityEngine

/

Inherits from:Component

/

Implemented in:UnityEngine.TextRenderingModule

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Switch to Manual

Description

The TextMesh component allows you to display text in 3D text mesh component.

This component dynamically generates a mesh that fits the text specified as input, it is great to make world space UI like displaying names above characters like the example below.

Note that Text Mesh Pro is now the preferred solution for creating 3D text as it's more feature complete compared to TextMesh.

Additional resources: text mesh component.

using UnityEngine;

public class CharacterNameTag : MonoBehaviour { public string characterName = "Player"; public Vector3 nameOffset = new Vector3(0, 2, 0);

GameObject nameTag;

void Start() { // Create a new GameObject for the name tag as a children nameTag = new GameObject("NameTag"); nameTag.transform.SetParent(transform);

// Add a TextMesh component var textMesh = nameTag.AddComponent<TextMesh>();

// Set text properties and make sure it stays centered. textMesh.text = characterName; textMesh.fontSize = 32; textMesh.characterSize = 0.1f; textMesh.anchor = TextAnchor.LowerCenter; textMesh.alignment = TextAlignment.Center; }

void Update() { // Make sure the name tag follows the offset nameTag.transform.position = transform.position + nameOffset;

// Make sure that the name tag is always facing the main camera if (Camera.main != null) nameTag.transform.rotation = Quaternion.LookRotation(nameTag.transform.position - Camera.main.transform.position); } }

Properties

alignmentHow lines of text are aligned (Left, Right, Center).
anchorWhich point of the text shares the position of the Transform.
characterSizeThe size of each character (This scales the whole text).
colorThe color used to render the text.
fontThe Font used.
fontSizeThe font size to use (for dynamic fonts).
fontStyleThe font style to use (for dynamic fonts).
lineSpacingHow much space will be in-between lines of text.
offsetZHow far should the text be offset from the transform.position.z when drawing.
richTextEnable HTML-style tags for Text Formatting Markup.
tabSizeHow much space will be inserted for a tab '\t' character. This is a multiplum of the 'spacebar' character offset.
textThe specified input text to display.

Inherited Members

Properties

gameObjectThe game object this component is attached to. A component is always attached to a game object.
tagThe tag of this game object.
transformThe Transform attached to this GameObject.
hideFlagsShould the object be hidden, saved with the Scene or modifiable by the user?
nameThe name of the object.

Public Methods

BroadcastMessageCalls the method named methodName on every MonoBehaviour in this game object or any of its children.
CompareTagChecks the GameObject's tag against the defined tag.
GetComponentGets a reference to a component of type T on the same GameObject as the component specified.
GetComponentInChildrenGets a reference to a component of type T on the same GameObject as the component specified, or any child of the GameObject.
GetComponentIndexGets the index of the component on its parent GameObject.
GetComponentInParentGets a reference to a component of type T on the same GameObject as the component specified, or any parent of the GameObject.
GetComponentsGets references to all components of type T on the same GameObject as the component specified.
GetComponentsInChildrenGets references to all components of type T on the same GameObject as the component specified, and any child of the GameObject.
GetComponentsInParentGets references to all components of type T on the same GameObject as the component specified, and any parent of the GameObject.
SendMessageCalls the method named methodName on every MonoBehaviour in this game object.
SendMessageUpwardsCalls the method named methodName on every MonoBehaviour in this game object and on every ancestor of the behaviour.
TryGetComponentGets the component of the specified type, if it exists.
GetInstanceIDGets the instance ID of the object.
ToStringReturns the name of the object.

Static Methods

DestroyRemoves a GameObject, component or asset.
DestroyImmediateDestroys the object obj immediately. You are strongly recommended to use Destroy instead.
DontDestroyOnLoadDo not destroy the target Object when loading a new Scene.
FindAnyObjectByTypeRetrieves any active loaded object of Type type.
FindFirstObjectByTypeRetrieves the first active loaded object of Type type.
FindObjectsByTypeRetrieves a list of all loaded objects of Type type.
InstantiateClones the object original and returns the clone.
InstantiateAsyncCaptures a snapshot of the original object (that must be related to some GameObject) and returns the AsyncInstantiateOperation.

Operators

boolDoes the object exist?
operator !=Compares if two objects refer to a different object.
operator ==Compares two object references to see if they refer to the same object.