TextMesh
Описание
Компонент TextMesh позволяет отображать текст в 3D текстовом компоненте сетки.
Этот компонент динамически генерирует сетку, которая соответствует тексту, указанному в качестве ввода, это отлично для создания мирового пространства UI, например, отображения имен над символами, как в примере ниже.
Обратите внимание, что Text Mesh Pro теперь является предпочтительным решением для создания 3D текста, так как он более полный по сравнению с TextMesh.
Дополнительные ресурсы: текстовый компонент сетки.
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); } }
Свойства
| Свойство | Описание |
|---|---|
| alignment | Как строки текста выравниваются (слева, справа, по центру). |
| anchor | Какая точка текста разделяет позицию Transform. |
| characterSize | Размер каждого символа (это масштабирует весь текст). |
| color | Цвет, используемый для отображения текста. |
| font | Используемый Шрифт. |
| fontSize | Размер шрифта для использования (для динамических шрифтов). |
| fontStyle | Используемый стиль шрифта (для динамических шрифтов). |
| lineSpacing | Насколько большим должен быть пробел между строками текста. |
| offsetZ | Как далеко текст должен быть смещен от transform.position.z при рисовании. |
| richText | Включить теги HTML-стиля для Текстового Форматирования Маркера. |
| tabSize | Количество пробелов, которое будет вставлено для символа табуляции '\ t'. Это кратное смещения символа 'пробел'. |
| text | Указанный входной текст для отображения. |
Унаследованные члены 4
Свойства
| Свойство | Описание |
|---|---|
| gameObject | GameObject, к которому прикреплен данный компонент. Компонент всегда прикрепляется к игровому объекту. |
| tag | Тег этого игрового объекта. |
| transform | Transform прикреплен к этому GameObject. |
| transformHandle | TransformHandle этого GameObject. |
| hideFlags | Должен ли объект быть скрытым, сохраняться с Scene или изменяться пользователем? |
| name | Имя объекта. |
Открытые методы
| Метод | Описание |
|---|---|
| BroadcastMessage | Вызывает метод с именем methodName на каждом MonoBehaviour в этом игровом объекте или любом из его дочерей. |
| CompareTag | Проверяет тег GameObject на соответствие определенному тегу. |
| GetComponent | Получает ссылку на компонент типа T на том же GameObject, что и указанный компонент. |
| GetComponentInChildren | Получает ссылку на компонент типа T на том же GameObject, что и указанный компонент, или на любого ребенка GameObject. |
| GetComponentIndex | Получает индекс компонента на его родительском GameObject. |
| GetComponentInParent | Получает ссылку на компонент типа T на том же GameObject, что и указанный компонент, или на любой родитель GameObject. |
| GetComponents | Получает ссылки на все компоненты типа T на том же GameObject, что и указанный компонент. |
| GetComponentsInChildren | Получает ссылки на все компоненты типа T на том же GameObject, что и указанный компонент, и на любого ребенка GameObject. |
| GetComponentsInParent | Получает ссылки на все компоненты типа T на том же GameObject, что и указанный компонент, и любой родитель GameObject. |
| SendMessage | Вызывает метод с именем methodName на каждом MonoBehaviour в этом игровом объекте. |
| SendMessageUpwards | Вызывает метод с именем methodName на каждом MonoBehaviour в этом игровом объекте и на каждом предшественнике поведения. |
| TryGetComponent | Получает компонент указанного типа, если он существует. |
| GetInstanceID | Получает экземпляр ID объекта. |
| ToString | Возвращает имя объекта. |
Статические методы
| Метод | Описание |
|---|---|
| Destroy | Удаляет GameObject, компонент или ресурс. |
| DestroyImmediate | Немедленно уничтожает указанный объект. Используйте с осторожностью и только в режиме редактирования. |
| DontDestroyOnLoad | Не уничтожать целевой Объект при загрузке нового Scene. |
| FindAnyObjectByType | Получает любой активный загруженный объект типа Type. |
| FindFirstObjectByType | Получает первый активный загруженный объект типа Type. |
| FindObjectsByType | Получает список всех загруженных объектов типа Type. |
| Instantiate | Клонирует исходный объект и возвращает клон. |
| InstantiateAsync | Захватывает моментальный снимок первоначального объекта (который должен быть связан с каким-либо GameObject) и возвращает AsyncInstantiateOperation. |
Операторы
| Оператор | Описание |
|---|---|
| bool | Существует ли объект? |
| оператор!= | Сравнивает, если два объекта ссылаются на разные объекты. |
| оператор == | Сравнение двух ссылок на объекты для определения того, относятся ли они к одному и тому же объекту. |