Как изменить цвет текста TextMeshPro?
для начала думаю стоит сказать, что текст должен быть не GO, а Text или TMP_Text(так не будет возможность сунуть в инспекторе не текст, а какой-то куб), а если уж и хочется говорить, что текст это GO, то нужно засунуть ошибку в переводчик и увидеть, что метод GetComponent() нуждается в том, чтобы ему сообщить какой компонент достаем из объекта, должно было быть так GetComponent<НазваниеКомпонента>();. Дальше будет проблема, что предложенном образом инициализировать не получится, нужно какой-нибудь Start. А уже потом можно будет и обратиться к цвету банально «text.color» это достанет цвет .НазваниеКомпонента>
[SerializeField] private GameObject _text; private UnityEngine.Color _colorText; private void Start() < _colorText = _text.GetComponent().color; >
Ответ написан более двух лет назад
Комментировать
Нравится 1 Комментировать
Программирование C#.
В следующий раз показывай сразу все ( весь скрипт ). Но пройдусь по всему:
Подключи пространство имен:
using TMPro; using UnityEngine; // Если нету
В переменных напиши:
public TMP_Text Text; public Color TextColor;
Text.color = TextColor; // или Text.color = Color. // И выбрать из предложенных вариантов
PS: На хабре можно отмечать несколько вопросов правильными 🙂
Текстовый меш
The Text Mesh generates 3D geometry that displays text strings.
You can create a new Text Mesh from Component > Mesh > Text Mesh.
Свойства
Свойство: | Функция: |
---|---|
Text | Текст, который будет рендериться. |
Offset Z | Уровень сдвига текста относительно transform.position.z. |
Character Size | The size of each character (This scales the whole text.) |
Line Spacing | Расстояние между строками текста. |
Anchor | Точка, относительно которой текст будет рисоваться |
Alignment | Выравнивание строк (лево, право, центр). |
Tab Size | How much space will be inserted for a tab ‘\t’ character. This is a multiplum of the ‘spacebar’ character offset. |
Font Size | The size of the font. This can override the size of a dynamic font. |
Font Style | The rendering style of the font. The font needs to be marked as dynamic. |
Rich Text | When selected this will enable tag processing when the text is rendered. |
Font | TrueType шрифт используемый при рендере текста. |
Color | The global color to use when rendering the text. |
Детали
Text Meshes can be used for rendering road signs, graffiti etc. The Text Mesh places text in the 3D scene. To make generic 2D text for GUIs, use a GUI Text component instead.
Следуйте следующим шагам, чтобы создать текстовый меш с пользовательским шрифтом:
- Import a font by dragging a TrueType Font — a .ttf file — from the Explorer (Windows) or Finder (OS X) into the Project View.
- Выберите в Project View импортированный шрифт.
- Choose GameObject > Create Other > 3D Text. You have now created a text mesh with your custom TrueType Font. You can scale the text and move it around using the Scene View’sTransform controls.
Note: If you want to change the font for a Text Mesh, need to set the component’s font property and also set the texture of the font material to the correct font texture. This texture can be located using the font asset’s foldout. If you forget to set the texture then the text in the mesh will appear blocky and misaligned.
Советы
Вы можете сказать бесплатные TrueType шрифты с сайта 1001freefonts.com (скачивайте версии шрифтов для Windows, т.к. они содержат TrueType шрифты). * If you are scripting the Text property, you can add line breaks by inserting the escape character “\n” in your strings. * Стиль текстовых мешей можно настраивать используя простую разметку. Для деталей см. Styled Text. * Fonts in Unity are rendered by first rendering the font glyphs to a texture map. If the font size is set too small, these font textures will appear blocky. Since TextMesh assets are rendered using quads, it’s possible that if the size of the TextMesh and font texture differ the TextMesh will look wrong.
QuickStart to TextMesh Pro
TextMesh Pro is an easy-to-use system for high-quality text. It has many text appearance and formatting options, and is an easy way to add a professional touch to any project’s user interface. In this tutorial, you will learn to prepare fonts for use in TextMesh Pro, create new TextMesh Pro objects, and alter those objects.
Выберите вашу версию Unity
Последнее обновление: апрель 13, 2022
Английский
Отслеживайте свой прогресс и получайте персональные рекомендации.Войдите с Unity ID
Войдите с Unity ID
QuickStart to TextMesh Pro
Unity.com
Новостная рассылка
Asset Store
Играть
Unity Academic Alliance
Сертификация Unity
Преподаватели
© 2024 Unity Technologies
- Правовая информация
- Политика конфиденциальности
- Cookie-файлы
- Использование персональных данных
- Настройки cookie-файлов
«Unity», логотипы Unity и другие торговые знаки Unity являются зарегистрированными торговыми знаками компании Unity Technologies или ее партнеров в США и других странах(подробнее здесь).Остальные наименования и бренды являются торговыми знаками соответствующих владельцев.
TextMeshPro
com.unity.textmeshpro
Описание
TextMeshPro — это идеальное текстовое решение для Unity. Это идеальная замена текстовому интерфейсу Unity и устаревшей текстовой сетке.
Мощный и простой в использовании TextMeshPro (также известный как TMP) использует расширенные методы визуализации текста вместе с набором пользовательских шейдеров; обеспечивая существенное улучшение визуального качества, а также предоставляя пользователям невероятную гибкость, когда речь идет о стилизации текста и текстурировании.
TextMeshPro обеспечивает улучшенный контроль над форматированием и макетом текста с такими функциями, как интервалы между символами, словами, строками и абзацами, кернинг, выравнивание текста по ширине, ссылки, более 30 тегов форматированного текста, поддержка нескольких шрифтов и спрайтов, пользовательские стили и многое другое.
Отличная производительность. Поскольку геометрия, созданная TextMeshPro, использует два треугольника на символ, как и текстовые компоненты Unity, это улучшенное визуальное качество и гибкость не требуют дополнительных затрат на производительность.
Информация о версии
Проверено для Unity
Пакет версии 3.0.6 проверен для Unity Editor версии 2020.3.
Совместимость с Unity
Эти версии пакетов доступны в Unity версии 2020.3:
Местоположение документации: | Статус | Доступные версии: |
---|---|---|
com.unity.textmeshpro@3.2 | превью | 3.2.0-pre.1, 3.2.0-pre.2, 3.2.0-pre.3 |
com.unity.textmeshpro@3.0 | проверено | 3.0.6 |