Текст на Canvas
О чем ты узнаешь из видео:
✅о компоненте TextMeshPro
✅узнаешь его основные параметры
✅поймешь что такое текстовой ассет
✅о компоненте TextMeshPro
✅узнаешь его основные параметры
✅поймешь что такое текстовой ассет
Все видосы ты сможешь найти на Ютьб, Рутьюб и Дзене.
О компоненте TextMeshPro:
Текст является основой частью интерфейса, ведь благодаря нему пользователь получает большую частью информации.
Текст в Unity, как и все остальные члены интерфейса, это компонент, который "весит" на объекте.
В Unity есть два основных компонента для создание текста на КАНВАСЕ: Text и TextMeshPro (UI).
Первый компонент мы рассматривать не будем, так как он устарел и поэтому сразу же перейдем к TextMeshPro.
Чтобы его сделать жмем по канвасу ПКМ и в опции UI выберем пункт Text-TextMeshPro. После этого в пустом проекте откроется окно импорта пакетов в проект, в котором надо установить все основные ресурсы для работы с этим компонентом.
Нужно кликнуть по одной активной кнопке и после загрузки на сцене появится сам текст.
Для понимая того, на что способен данный компонент и какие вещи с ним можно делать я рекомендую скачать примеры и дополнения к нему. Для этого нужно нажать на кнопку ниже. И после загрузки все примеры и дополнения будут находиться в папке TextMesh Pro -> Examples & Extras. А в папке Scenes лежат готовые примеры.
узнаешь его основные параметры:
Теперь давайте отключим Gizmos TextMeshPro, и рассмотрим его основные параметры:
TextInput
Итак первый и самый важный пункт - TextInput. Здесь все довольно просто, то что мы впишем в этот блок, то и будет отображаться в интерфейсе. В этом поле ввода учитываются пробелы, отступы - в общем абсолютно все.
Итак первый и самый важный пункт - TextInput. Здесь все довольно просто, то что мы впишем в этот блок, то и будет отображаться в интерфейсе. В этом поле ввода учитываются пробелы, отступы - в общем абсолютно все.
FontAsset
Он принимает в себя ссылку на шрифтовой ассет. Дело в том, что данный компонент не работает с обычными шрифтовыми файлами формата (tff, otf и прочее), только с ассетами. Шрифтовой ассет состоит из двух под-Ассетов (sub-Assets):
Он принимает в себя ссылку на шрифтовой ассет. Дело в том, что данный компонент не работает с обычными шрифтовыми файлами формата (tff, otf и прочее), только с ассетами. Шрифтовой ассет состоит из двух под-Ассетов (sub-Assets):
Аталасс шрифта - файл черно-белой текстуры или текстуры в градациях серого, содержащий все символы, включенные в ассет шрифта.
Материал шрифта который управляет внешним видом текста.
Как сделать ассет, вы сегодня узнаете, ну а пока пойдем дальше.
FontStyle
Отвечает за стиль текста: будет ли текст жирным, наклоненным, подчеркнутым, зачеркнутым, будут ли все буквы заглавные или строчные.
Отвечает за стиль текста: будет ли текст жирным, наклоненным, подчеркнутым, зачеркнутым, будут ли все буквы заглавные или строчные.
FontSize
Отвечает за размер шрифта.
Отвечает за размер шрифта.
Лайфхак:
Вы можете изменять размер шрифта и при помощи масштаба, но в интерфейсе, лучше этого не делать, так как потом будет ОООЧЕНЬ много проблем и с адаптивностью UI.
Вы можете изменять размер шрифта и при помощи масштаба, но в интерфейсе, лучше этого не делать, так как потом будет ОООЧЕНЬ много проблем и с адаптивностью UI.
У FontSize есть дополнительная опция под названием AutoSize, которая используются, когда надо сделать зависимость между размерами объекта и самого текста.
К примеру, если поставить галочку в этом пункте, то при изменение ширины блока, размер шрифта будет также меняться. Данный пункт используется в частных случаях, так как инструменты для адаптивной верстки, которые мы изучили на прошлом уроке, покрывают большую часть проблем.
VertexColor и ColorGradient
Отвечают за цвет текста, с ними все легко. Кликаем по опции и при помощи пипетки или палитры выбираем цвет.
Отвечают за цвет текста, с ними все легко. Кликаем по опции и при помощи пипетки или палитры выбираем цвет.
SpacingOptions
Предназначен для настройки отступов между символами, словами, строчками и абзацами. Абзац в TextMeshPro это табуляция (я надеюсь вы знаете что это...)
Предназначен для настройки отступов между символами, словами, строчками и абзацами. Абзац в TextMeshPro это табуляция (я надеюсь вы знаете что это...)
Alignment
Отвечает за расположение текста внутри объекта, в котором он находится. В принципе расстановка позиции такая же как в Word.
Отвечает за расположение текста внутри объекта, в котором он находится. В принципе расстановка позиции такая же как в Word.
Wrapping
Если текст будет выходить за границы своего блока, то он автоматически перенесется на следующую строку. Если вам это не нужно просто отключите пункт Wrapping.
Если текст будет выходить за границы своего блока, то он автоматически перенесется на следующую строку. Если вам это не нужно просто отключите пункт Wrapping.
ExtraSettings-Margins
Этот находится в дополнительных настройках, и отвечает он за отступы. Посмотрите в окно Scene, видите объект Text'а имеет желтые линии? Ну вот это и есть margin'ы. Они отвечают за отступ между самим текстом и блоком в котором они находится.
Этот находится в дополнительных настройках, и отвечает он за отступы. Посмотрите в окно Scene, видите объект Text'а имеет желтые линии? Ну вот это и есть margin'ы. Они отвечают за отступ между самим текстом и блоком в котором они находится.
Лайфхак: НИКОГДА НЕ МЕНЯЙТЕ РАЗМЕР БЛОКА с margin. Нужно изменять их только в том случае, если объект имеет корректные размеры иначе, это опять приведет к неприятным последствиям у адапативности.
Итак, безусловно TextMeshPro имеет еще очень много пунктов. Однако это - основные из них. А со остальным можно познакомиться на практике.
Теперь давайте перейдем к не менее важному инструменту, а именно к FontAsset Creatorу.
поймешь что такое текстовой ассет:
Предположим, что вы захотели использовать кастомный шрифт. Вы нашли его, скачали, убедились что у вас есть лицензия на бесплатное его использование. Но сам шрифт вы использовать пока не можете, так как (давайте скажем это вместе:) TextMeshPro работает только с шрифтовыми ассетами.
Чтобы сделать свой ассет, нужно в шапке Unity выбрать опцию Window-TextMeshPro и в ней кликнуть по пункту FontAssetCreator.
В открывшемся окне, нужно указать ссылку на шрифт из которого будем делать ассет. Цель сделать так чтобы при помощи ассета можно было писать текста на английсом и русском. Поэтому в опции Character Set указываем пункт UniCode Range (Hex). Ниже в поле ввода прописываем диапазон символов которые должны находиться в ассете. Здесь укажем значение 0400-04FF (диапазон в котором есть все основные символы).
Ниже кликаем по кнопке Generate Font Atlas. И после генерации выберем опцию Save As.
Укажем интересующую директорию и вуаля. Текстовой ассет готов. Осталось только указать его в компоненте TextMeshPro и шрифт готов.
Домашние задание
Сверстать окно которое находится в видео уроке в конце.
Если вдруг вы не знаете как сделать это упражнение или возникла какая-то проблема при выполнении - посмотрите проект с готовым решением по ссылке в описании.
Завершение
На этом урок подошел к концу, если вам он понравился не забудьте оценить его лайком и подписаться, чтобы не пропустить новые уроки.