TextMeshPro в Unity C#: установка и работа с текстом
TextMeshPro — мощная и гибкая система отображения текста в Unity. Она даёт лучшее качество и производительность, чем стандартные текстовые компоненты, и позволяет тонко работать с текстом: форматирование, шрифты, эффекты и многое другое.
Главное преимущество — высокая резкость текста за счёт технологии SDF (Signed Distance Field). Это особенно заметно на крупном тексте и при масштабировании. Плюс к тексту можно добавлять тени, контуры и градиенты.
TextMeshPro поддерживает продвинутое управление стилями, поэтому отлично подходит там, где важна эстетика текста: интерфейсы, заголовки, игровые диалоги.
Пример кода
Скрипт задаёт текст, размер шрифта и цвет через TextMeshProUGUI:
using TMPro;
using UnityEngine;
public class TextExample : MonoBehaviour
{
public TextMeshProUGUI messageText;
void Start()
{
// Установка текста
messageText.text = "Добро пожаловать в TextMeshPro!";
// Изменение размера и цвета текста
messageText.fontSize = 36;
messageText.color = Color.cyan;
// Добавление эффекта тени
messageText.enableWordWrapping = true;
}
}
Здесь используется TextMeshProUGUI — компонент для UI-текста, самый частый вариант TextMeshPro. Также система умеет работать с пользовательскими шрифтами: импортируешь шрифт в Unity, генерируешь текстовый ассет и настраиваешь его прямо в редакторе.