learn-unity

learn-unity 

Наша жизнь игра, и мы её программисты

2subscribers

20posts

goals1
0 of 10 paid subscribers
Если наберем 10 подписчиков, значит мы нужны, значит мы важны...

Текст на Canvas

О чем ты узнаешь из видео:
✅о компоненте TextMeshPro
✅узнаешь его основные параметры
✅поймешь что такое текстовой ассет
Все видосы ты сможешь найти на Ютьб, Рутьюб и Дзене.
О компоненте TextMeshPro:
Текст является основой частью интерфейса, ведь благодаря нему пользователь получает большую частью информации.
Текст в Unity, как и все остальные члены интерфейса, это компонент, который "весит" на объекте.
В Unity есть два основных компонента для создание текста на КАНВАСЕ: Text и TextMeshPro (UI).
Первый компонент мы рассматривать не будем, так как он устарел и поэтому сразу же перейдем к TextMeshPro.
Чтобы его сделать жмем по канвасу ПКМ и в опции UI выберем пункт Text-TextMeshPro. После этого в пустом проекте откроется окно импорта пакетов в проект, в котором надо установить все основные ресурсы для работы с этим компонентом.
Нужно кликнуть по одной активной кнопке и после загрузки на сцене появится сам текст.
Для понимая того, на что способен данный компонент и какие вещи с ним можно делать я рекомендую скачать примеры и дополнения к нему. Для этого нужно нажать на кнопку ниже. И после загрузки все примеры и дополнения будут находиться в папке TextMesh Pro -> Examples & Extras. А в папке Scenes лежат готовые примеры.
узнаешь его основные параметры:
Теперь давайте отключим Gizmos TextMeshPro, и рассмотрим его основные параметры:
TextInput
Итак первый и самый важный пункт - TextInput. Здесь все довольно просто, то что мы впишем в этот блок, то и будет отображаться в интерфейсе. В этом поле ввода учитываются пробелы, отступы - в общем абсолютно все.
FontAsset
Он принимает в себя ссылку на шрифтовой ассет. Дело в том, что данный компонент не работает с обычными шрифтовыми файлами формата (tff, otf и прочее), только с ассетами. Шрифтовой ассет состоит из двух под-Ассетов (sub-Assets):
Аталасс шрифта - файл черно-белой текстуры или текстуры в градациях серого, содержащий все символы, включенные в ассет шрифта.
Материал шрифта который управляет внешним видом текста.
Как сделать ассет, вы сегодня узнаете, ну а пока пойдем дальше.
FontStyle
Отвечает за стиль текста: будет ли текст жирным, наклоненным, подчеркнутым, зачеркнутым, будут ли все буквы заглавные или строчные.
FontSize
Отвечает за размер шрифта.
Лайфхак:
Вы можете изменять размер шрифта и при помощи масштаба, но в интерфейсе, лучше этого не делать, так как потом будет ОООЧЕНЬ много проблем и с адаптивностью UI.
У FontSize есть дополнительная опция под названием AutoSize, которая используются, когда надо сделать зависимость между размерами объекта и самого текста.
К примеру, если поставить галочку в этом пункте, то при изменение ширины блока, размер шрифта будет также меняться. Данный пункт используется в частных случаях, так как инструменты для адаптивной верстки, которые мы изучили на прошлом уроке, покрывают большую часть проблем.
VertexColor и ColorGradient
Отвечают за цвет текста, с ними все легко. Кликаем по опции и при помощи пипетки или палитры выбираем цвет.
SpacingOptions
Предназначен для настройки отступов между символами, словами, строчками и абзацами. Абзац в TextMeshPro это табуляция (я надеюсь вы знаете что это...)
Alignment
Отвечает за расположение текста внутри объекта, в котором он находится. В принципе расстановка позиции такая же как в Word.
Wrapping
Если текст будет выходить за границы своего блока, то он автоматически перенесется на следующую строку. Если вам это не нужно просто отключите пункт Wrapping.
ExtraSettings-Margins
Этот находится в дополнительных настройках, и отвечает он за отступы. Посмотрите в окно 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 и шрифт готов.
Домашние задание
Сверстать окно которое находится в видео уроке в конце.
Если вдруг вы не знаете как сделать это упражнение или возникла какая-то проблема при выполнении - посмотрите проект с готовым решением по ссылке в описании.
Завершение
На этом урок подошел к концу, если вам он понравился не забудьте оценить его лайком и подписаться, чтобы не пропустить новые уроки.
Subscription levels2

На еду и коммуналку

$0.65 per month
Просто для тех, кто не безразличен к благодарности за контент. Мы делаем мы стараемся,Ю и, если это кому-то нужно, то welcome.

Для любителей по-глубже

$1.29 per month
Тут будет эксклюзив для тех, кто хочет углубится в изучение UNITY. А вдруг есть им такие тут?))
Go up