background top icon
background center wave icon
background filled rhombus icon
background two lines icon
background stroke rhombus icon

Скачать "Unity. Введение в UI"

input logo icon
Обложка аудиозаписи
Подождите немного, мы готовим ссылки для удобного просмотра видео без рекламы и его скачивания.
console placeholder icon
Теги видео
|

Теги видео

unity
введение
ui
Субтитры
|

Субтитры

subtitles menu arrow
  • enАнглийский
Скачать
00:01:13
все бред рад вас всех видеть
00:01:19
напишите как звук
00:01:27
подтягиваемся стрим чат если кто-нибудь
00:01:30
сегодня конечно будет учитывая праздники
00:01:43
так узко мыслим пока выбрать
00:01:49
еллоу
00:01:51
кто-нибудь есть все-таки ведь
00:02:07
подтягивать это хорошо да я уже успел
00:02:16
даже по вам соскучится за эту неделю
00:02:19
классно вот надеюсь что вы хорошо
00:02:22
отдохнули у и успели реализовать
00:02:23
курсовую работу
00:02:24
вот и перед тем как мы начнем лекцию я
00:02:27
попрошу вас оценить еще предыдущий блок
00:02:29
все так же самое что и было у нас в
00:02:33
прошлом блоки вот такой фидбэк помог и
00:02:36
бою там вопросов и те же самые
00:02:39
кстати если вдруг пропустили прошла
00:02:41
просто его я тоже чуть по поиски ну вот
00:02:44
сегодня мы стартуем большой блок по
00:02:45
посвященный юань имеет и механиком эта
00:02:49
механика это такие игровые механики
00:02:51
которые напрямую не взаимодействуют с
00:02:55
игровым миром скажем так опосредованно
00:02:57
например тот же самый инвентарь или
00:02:59
прокачка героя это вот относится комета
00:03:01
механиком а никакой механиком типа
00:03:03
прыжков возможности играться и всего
00:03:06
такого вот и сегодня мы начнем с того
00:03:08
что познакомимся с ей по системам unity
00:03:11
научимся настраивать рабочую область да
00:03:13
ей и и верстать простые меню собственно
00:03:17
давайте начнем для начала давайте
00:03:22
создадим отдельную сцену
00:03:25
которые мы будем экспериментировать с
00:03:28
нашими
00:03:29
его и системами
00:03:38
назовем его мы именем вот за ей в unity
00:03:44
отвечает компоненты который называется
00:03:46
canvas добавить его можно с помощью
00:03:49
выпадающего меню
00:03:51
ей и canvas помимо этого добавляется
00:03:56
сразу несколько других компонентов the
00:03:58
congo скейлер графикой кастер и еще
00:04:01
even систем который при этом нас ошибка
00:04:05
вылезает но это все потому что мы
00:04:07
используем новую input систему то мы
00:04:09
можем легко исправить нажав кнопочку
00:04:11
replace виски пастис them you a input
00:04:13
module
00:04:14
вот похитителем собственно давайте
00:04:17
остановимся на каждом из этих базовых
00:04:20
компонентов и рассмотрим какие у них
00:04:22
есть настройки
00:04:23
какие параметры на что они влияют и как
00:04:25
нам настроить нашу сцену необходимую для
00:04:27
конкретно нашей игры вот что такое в
00:04:30
принципе камаз камаз это такое рабочее
00:04:34
пространство для которого мы можем
00:04:36
располагать двухмерные объекты но у этих
00:04:39
двух верных объектов не просто transform
00:04:41
а rect transform это наследник от
00:04:44
обычного трансформа но он расширяет его
00:04:45
путем добавления до дополнительных
00:04:48
параметров это pivot анкор и ширина и
00:04:53
высота с этим мы поработаем чуть попозже
00:04:57
сейчас давайте про параметры canvas
00:04:59
самого
00:05:02
собственно canvas может работать в
00:05:05
нескольких режимах и the screen space
00:05:08
overlay
00:05:10
screen space camera и мол space для того
00:05:13
чтобы как то это все увидеть давайте
00:05:15
наверное здесь пока создадим
00:05:18
какие-нибудь объекте key
00:05:28
чтобы хотя бы было понятно как меняются
00:05:32
разные настройки вот screen space
00:05:39
overlay и у него сразу несколько
00:05:42
параметров есть что это значит это
00:05:43
значит что наш canvas будет отображаться
00:05:45
поверх всех объектов которые есть у нас
00:05:49
в сцене поверх всего того что рисует там
00:05:51
камера сейчас мы здесь есть камера
00:05:53
давайте добавим трехмерных объектов
00:05:59
думаем еще суда света чтобы они хоть
00:06:03
как-то освещались их отнюдь их наверно
00:06:04
повернем что ли
00:06:19
типа того вот и как вы видите все что
00:06:25
рисуется на канвасе рисуется у нас
00:06:26
поверх нашего тренера
00:06:30
наши объекты а наш камаз вообще
00:06:33
отдельно стоит даже вот так видно что
00:06:37
вот они объекты а вот canvas get ready
00:06:39
слетает это первый режим вот так же у
00:06:45
него есть несколько параметров
00:06:47
pixel perfect это отключение
00:06:50
antialiasing или включение его для более
00:06:53
точной рисовки если картинка достаточно
00:06:59
качественно то можно его этот учить для
00:07:03
экономии ресурсов вот дальше идет сорт
00:07:05
ордер это сортировка относительно других
00:07:08
канвасов ну то есть также как у нас со
00:07:10
спрайтами идет здесь также есть
00:07:12
со строительным фото мере ими виду есть
00:07:14
также есть сортировка если мы добавим
00:07:17
сюда два окна сам наводил ему синеньким
00:07:24
то мы можем меня этот property
00:07:29
двигать его выше или ниже и таргет
00:07:38
дисплей это
00:07:39
дисплей на котором будут отображаться
00:07:40
этот canvas но большинство игр
00:07:43
поддерживают только один дисплей внутри
00:07:45
принципе такая довольно спорная фича
00:07:47
поддержка дисплеев поэтому как правило
00:07:51
здесь всегда устанавливается только один
00:07:53
и один с топорами то если мы хотим
00:07:59
написать для нашего канваса как его
00:08:02
сделать постобработку какую-то добавить
00:08:04
какую-то шейдеры ему то есть сюда можно
00:08:06
дописать еще какую то информацию в
00:08:10
именно в тот момент когда мы будем
00:08:13
вырабатывать шейдером всю информацию с
00:08:17
компасом ну как бы мы рамках этого курса
00:08:19
этого не будет касаться достаточно
00:08:21
углублено темам
00:08:23
вот следующий режим это screen space
00:08:26
camera то есть canvas отображается в
00:08:30
качестве плейдо перед камерой здесь вы
00:08:33
должны указать ему камеру с которой он
00:08:35
будет связан и если мы сейчас посмотрим
00:08:39
3d мир так он вас уже будет гораздо
00:08:42
ближе к баму то есть он не где-то
00:08:45
вдалеке стоит это и пространстве
00:08:47
а он отображается перед камерой вот наша
00:08:50
камера вот наш canvas и вот здесь
00:08:52
находятся наши кубы
00:08:54
можно даже эти кубы подвинуть таким
00:08:57
образом чтобы они были перед классом
00:09:03
свете 1 получается
00:09:05
спереди него спереди него другой сзади
00:09:11
вот это все влияет на рендеринг сейчас
00:09:15
по сути canvas на канал с клиентками вот
00:09:20
и следующий параметр здесь это plain
00:09:23
distance это грубо говоря на какой
00:09:26
дистанции от камеры находится наш камаз
00:09:29
можем двигать туда-сюда видите
00:09:33
перекрывать или наоборот отдаляться от
00:09:38
объектов sorting layer и order in layer
00:09:43
это все тоже самое как и у spite of то
00:09:44
есть если нас несколько канвасов то они
00:09:46
будут чинятся вот этим правилам ну это
00:09:52
же самое про shader следующий режим это
00:09:54
у нас world space
00:09:57
world space это значит что у нас canvas
00:09:59
рисуется прям таки непосредственно в
00:10:02
самом 3d мире то есть он не привязаны к
00:10:05
камере него есть только event camera то есть та
00:10:08
камера с которой он будет считывать
00:10:09
какие-то ивенты которые на него будет
00:10:12
взаимодействовать но он рисуется как 3d объект и мы можем
00:10:17
благодаря этому его во первых перемещать
00:10:22
сам canvas то есть ранее
00:10:25
у нас весь transform было залочены
00:10:28
других режимах вот а здесь мы можем его
00:10:30
перемещать менять его размер и также
00:10:32
задавать ему ну например вращения для
00:10:38
некоторых видов
00:10:39
его я или каких-то вспомогательных
00:10:41
элементов это бывает достаточно эффектно
00:10:44
первым моим расположите вот так вот
00:10:47
сбоку красиво располагаться вот здесь то же
00:10:54
самое sorting layer 1 year
00:10:55
это если у нас вдруг будет несколько
00:10:57
канвасов то они будут сортироваться с
00:11:00
помощью вот этих настроек нас интересует
00:11:06
в первую очередь screen space overlay
00:11:07
потому что мы будем рисовать
00:11:09
сейчас по крайней мере обычный урай
00:11:12
который предполагает что он у нас будет
00:11:14
находиться поверх нашего мира как 2d
00:11:17
снова так и 3d что
00:11:19
поэтому ставлю индийской in space
00:11:21
overlay сорокин контур можно расставить
00:11:23
вот как он есть pixel perfect ну для
00:11:28
основного canvas в принципе можно
00:11:29
включить 400 нас печатная графика
00:11:31
достаточно небольшая по размерам текстур
00:11:37
сильно большого сильно большой проблем с
00:11:40
этим не будет интересно что когда мы
00:11:43
будем дальше делать оптимизацию то на
00:11:44
начальных классах при большом количестве
00:11:48
2 живых предметов внутри и нашего героя
00:11:51
то нам нужно будет эту галочку отключать
00:11:54
в некоторых случаях именно для экономии
00:11:57
ресурсов так давайте перейдём к
00:12:00
следующему компоненту
00:12:01
следующий компонент это canvas скайлер
00:12:06
очень важный компонент он отвечает за то
00:12:08
как будет
00:12:09
скейлится canvas зависимости от
00:12:11
разрешения экрана вот или других
00:12:14
параметров пиксел density либо аспектом
00:12:19
то есть соотношение сторон
00:12:21
вот и здесь так же есть несколько
00:12:22
режимов констан пиксел says скорби
00:12:26
screen says контент физику says что
00:12:29
такое констант пиксел says это всегда
00:12:32
один и тот же размер canvas пикселях
00:12:37
здесь мы можем задать ему два параметра
00:12:40
scale factor
00:12:41
насколько он будет растягиваться во все
00:12:43
стороны вот и reference pixels per unit
00:12:47
этот параметр присутствует нас в каждом
00:12:51
из режимов и это сколько пикселей
00:12:56
спрайта содержится в одном юните канваса
00:12:58
учитывая что мы везде создает создаем
00:13:01
наш пиксел перекинет 32 вот и все
00:13:04
текстуры у нас собственно под 32 пикселя
00:13:09
нарисован это я думаю мы можем смело
00:13:11
задать 32 пикселя вот дальше у нас идет
00:13:17
режим скорее из-за из на кстати вот
00:13:22
здесь установили и теперь мы можем
00:13:24
например сделать free aspect вот и
00:13:29
посмотреть что у нас и мы 400 до 600 и
00:13:32
он пытается отрисовать 300 на 600 и не
00:13:35
как низко элитном наш экран если мы
00:13:40
здесь выберем сказал скорее screen says
00:13:46
то тогда он будет пытаться немножко
00:13:53
постели ваться но нам нужно задать
00:13:55
наша референсная единственная
00:13:58
evolutionary установил решение нашего
00:14:00
экрана и конечно картинку можно бы
00:14:05
поменьше потому что у нас 32 письма per
00:14:09
unit вот это довольно большая большой
00:14:12
размер здесь получается
00:14:14
что-нибудь как бы такой куб вот
00:14:22
ветреность resolution это разрешение под
00:14:25
которые мы будем верстать наш юань
00:14:27
если разрешение будет другим the canvas
00:14:30
будет либо увеличиваться либо
00:14:31
уменьшаться семья сейчас разрешения по
00:14:35
моему седьмого айфона что ли 1304 на 750
00:14:40
пикселей но и такое поставим вот и
00:14:44
теперь если мы поставим проспект то
00:14:53
видите он начинает изменять свой размер
00:14:56
но изменяет свой размер он не просто так
00:14:59
изменяет свой размер он с помощью
00:15:02
нескольких других параметров например
00:15:05
матч без
00:15:06
archive что это значит да на что мы
00:15:09
можем здесь указать какой из аспектов то
00:15:13
есть ширину или высоту
00:15:14
мы будем читать как референс и при
00:15:19
изменении какой из этих
00:15:20
какого из этих напитков из этого
00:15:22
значения мы будем стелить наш карбас
00:15:24
сейчас мы указали здесь только ширина
00:15:27
вот и сам сказал происходит только при
00:15:31
изменении ширины
00:15:32
если мы по высоте будем растягивать то
00:15:34
ничего не произойдет либо мы можем
00:15:36
наоборот указать только высоту видите
00:15:40
про ширине ничего не меняется но когда
00:15:43
мы сказали по высоте размер нашего
00:15:45
экрана то меняется и скорее вашего
00:15:48
канваса можно указать 05 и он будет и
00:15:53
так и такое лицо что весьма удобно вот и
00:15:59
еще несколько других параметров expand
00:16:02
то есть мы расширяем наш canvas по
00:16:05
горизонтали и по вертикали размер кант
00:16:08
каносса никогда не будет меньше
00:16:09
референсного значение
00:16:20
реконстрой на их соотношение сторон вот
00:16:23
и shrink это мы обрезаем карман размер
00:16:28
канваса никогда не будет больше
00:16:29
референсного подкидывать я предлагаю
00:16:41
использовать здесь
00:16:44
скалы screen says для нашего приложения
00:16:48
вот и здесь матч we saw his 05 помимо
00:16:54
этого еще какой из коего мод констант
00:16:57
везикул says здесь мы уже будем
00:17:01
рассчитывать квиллинг исходя из
00:17:05
плотности
00:17:07
точек нашем экране здесь мы можем
00:17:13
выбрать еще и каких юнитах мы будем как
00:17:18
рассчитывать физическую величину
00:17:19
физическую величину нашего тебя я
00:17:27
зависимости от того какие винты мы
00:17:29
используем так и будет распилить честно
00:17:34
я не помню чтобы где-то использовался
00:17:35
данный иверской вот ну как целом есть
00:17:38
такой если у нас например знаю мы хотим
00:17:40
поддерживать
00:17:41
изменения в нашем я и именно по
00:17:45
соотношению
00:17:46
писал density плотности точек то в
00:17:49
принципе то можно так таким образом
00:17:51
заморочится
00:17:52
но мы будем использовать вот такие
00:17:55
настройки
00:17:57
следующий компонент который нам
00:18:01
понадобится эта графикой кастер за что
00:18:06
он отвечает он отвечает за возможность
00:18:07
ари кастить на этот canvas то есть если
00:18:11
по простому то взаимодействовать с нашим
00:18:12
канава сам посредством мышки и либо то
00:18:14
чисто у нас мобильного устройства и у
00:18:18
него тоже есть несколько несколько
00:18:20
настроек
00:18:21
например игнор привился graphics что
00:18:24
значит это значит что если у нас будет
00:18:27
внутри нашего канваса ну например
00:18:32
кнопкам и в базовом виде когда какой
00:18:39
кастер позволит нам с ней
00:18:40
взаимодействовать видите она как-то
00:18:43
меняется но если мы в этой кнопки
00:18:46
возьмем ее графику и повернем ее на 180
00:18:53
градусов то ничего уже происходить не
00:18:58
будет потому что она как бы отвернута
00:19:00
утра и кастом тоже довольно сомнительно
00:19:09
что у нас будет какая-то графика которая
00:19:12
будет вращаться именно по в направлении
00:19:17
от угла зрения поэтому можно принципе
00:19:23
оставить и дальше у нас есть блок с
00:19:26
благин объект то есть это то какие
00:19:28
объекты могут блокировать to china наш
00:19:32
canvas это актуально для режимов
00:19:35
например screen space camera либо
00:19:37
молдпрес
00:19:39
давайте поместим их canvas world space и
00:19:44
установим его так чтобы его было видно
00:19:49
нашу камеру к кайту cкyчнo большеваты
00:20:25
такого наверно вот и получается что у
00:20:31
нас с кубы они находятся перед нашим к
00:20:37
носом
00:20:49
то есть ведь и сейчас у нас блоки но не
00:20:53
установлены никакие вот если мы например
00:20:55
здесь
00:20:56
но in 3d то клик по кнопке там где у нас
00:21:02
он закрывается 3d объектом уже не
00:21:04
проходит звук проходит лески проходит
00:21:06
вот это же самое смазкой то есть мы
00:21:10
например можем кубом выставить
00:21:13
какую-нибудь морском выпуская не будет
00:21:16
коллег tables а здесь уже пекарей
00:21:22
костери мы можем сказать что collect a
00:21:25
blast например у нас не будут
00:21:27
блокировать не видите все проходит но
00:21:30
если мы collecta было собрано включим то
00:21:32
проходить уже клики не будут вот такой
00:21:37
вот компонент для кори coaster давайте
00:21:41
переведем как было
00:22:01
так ну и последний компонент которого
00:22:04
добавился это эвен систем это
00:22:07
специальная система ивентов в unity
00:22:09
которая позволяет нам отлавливать
00:22:12
события
00:22:13
кликов на кнопку драгов и прочих
00:22:17
элементов сатана специфичная для ей подсистема вот
00:22:22
плюс к нему еще вот input module
00:22:23
добавлен который redirected все вот
00:22:27
такие винты с старым путь системы на
00:22:30
новым путь систему в принципе мы все вот
00:22:33
это можем перемотать на какие-то наши
00:22:35
ивенты но как бы для htc не требуется и
00:22:40
так с самим канваса мы познакомились
00:22:44
настроили его размеры и его параметры
00:22:48
теперь самое время перейти к тому чтобы
00:22:51
начать верстать наши девушки все уберем
00:23:04
к лекции будет приложен пакет ресурсов
00:23:09
который будет и войны и текстуры и shift
00:23:13
который мы будем использовать в принципе
00:23:15
можете использовать любой другой шрифт
00:23:16
этот я нашел на просторах интернета их
00:23:18
под креатив коммонс 0 рецензий
00:23:20
а наше текстурки которые мы будем
00:23:24
использовать для я и они все есть так же
00:23:26
в нашем asset пакет вот эта 1
00:23:36
но беда в том что они нарезанные
00:23:39
немножко не так как нам требуется для и
00:23:41
видите то есть они видите новизны все
00:23:42
такими вот кусочками вот либо
00:23:45
нас есть еще гайд но гайд опять же мы не
00:23:47
можем использовать потому что в нем есть
00:23:49
промежутке между между вот этими текстур
00:23:54
коми кусочками нам же для того чтобы
00:23:57
иметь
00:23:58
красиво настраиваемые текстурки
00:24:01
потребуется как раз таки и
00:24:04
или собранные текстуры которые выглядят
00:24:07
вот так пример видите мы получается
00:24:16
склеили много кусочков по 1 и потом
00:24:18
будем его уже с помощью гайдов которые
00:24:22
есть внутри видите
00:24:23
разделять для того чтобы у нас все
00:24:24
правильно то лилась и тянусь я собрал не
00:24:28
все текстуры которые есть а только вот
00:24:30
базовые которые нам понадобятся для
00:24:31
сегодняшней лекции остальные вы можете
00:24:33
создавать самостоятельно в любом
00:24:35
редакторе давайте это все перенесем вот
00:24:44
здесь директории текстур мы заведем ещё
00:24:49
суп директорию юар и в нем будет жить
00:24:54
shift и вот эти вот провели нарезанные
00:24:57
текстурки
00:25:00
общем тут есть дополнительный звук
00:25:10
который мы чуть позже тоже будем
00:25:12
использовать так мы давайте например в
00:25:22
качестве background для нашего диалога
00:25:23
мы будем использовать вот эту текстурку
00:25:27
тоже называется у нас поттер нам нужно
00:25:32
теперь правильно порезать порезать так
00:25:34
чтобы у нее центральная часть
00:25:36
растягивалась потому что видите она
00:25:38
сплошной заливкой идет от края
00:25:42
оставались неизменными чтобы у нас не
00:25:46
было проблем
00:25:47
что у нас такие некрасивые и растянутые
00:25:50
краям и вот так мы вытягиваем эти гайды
00:25:53
и делаем центральную часть
00:26:06
растяжимый можем делать uplay и теперь
00:26:13
познакомимся с первым элементом который
00:26:18
мы будем использовать это компонент
00:26:20
имидж также вот мы с помощью выпадающего
00:26:23
меню я и можем создать game object
00:26:26
внутри канваса
00:26:28
на который будет уже напишем компонент
00:26:30
image так же мы можем просто создать
00:26:34
внутри канваса пустой и может и на него
00:26:39
добавить сам компонент вот так что в
00:26:44
компоненте mesh есть тут мы можем
00:26:46
указать спрайт который мы будем
00:26:48
использовать цвет покраски этого спрайта
00:26:51
тремя такого кент материал
00:26:56
дефолтный материал мы будем использовать
00:26:58
практически для всех наших имидже и для
00:27:00
всего канваса и два параметра oikos
00:27:06
таргет это может ли данный
00:27:09
данная картинка по имени принимать на
00:27:12
себя репосты то есть клики либо тача и
00:27:15
параметр маска был это может ли данный
00:27:19
справить принимать участие
00:27:21
в рязани с помощью спрайта в маске с ним
00:27:25
и постричь эрекции познакомимся мы
00:27:28
давайте назовем это все background
00:27:31
и перетащим сюда
00:27:38
paper вот и теперь когда мы перетащили
00:28:00
сюда сам с саму картинку мы можем
00:28:03
выбрать тип нашего видео это слазит
00:28:07
simple to элит и пилит символ это просто
00:28:10
вот картинка как она есть
00:28:12
как она есть текстуре и случае если мы
00:28:16
будем изменять их размер видите она
00:28:18
будет не правильно отображать контракт
00:28:22
свой skylink хотя мы можем нажать
00:28:24
галочку тренер спрайт придет в аспект
00:28:28
вот и тогда скорее будет правильный но
00:28:31
мы не сможем тогда ей изменять ее размер
00:28:34
только изменять ее масштаб скажем так но
00:28:38
у нас есть режим слайсер который
00:28:42
позволяет сохранить
00:28:43
именно наши корнер и и при этом сделать
00:28:50
сплошную заливку вот так же есть у нас
00:28:53
режим тайлер это когда мы внутреннюю
00:28:55
часть мы ее как бы размножаем также
00:28:58
сохраняя наши корнер нашей границе
00:29:02
и филипп это когда мы берём обычный
00:29:06
спрайт и
00:29:08
можем использовать только частью вам
00:29:11
сделать заливку например у вас есть
00:29:13
radial 360 и и amount и мы можем таким
00:29:18
образом его заливать или например мы
00:29:21
можем horizontal сделать каких-нибудь
00:29:25
прогресс баров или еще чем-то такого
00:29:27
может быть полезным
00:29:33
в нашем случае это будет слазит фил
00:29:39
центр галочка то есть заполнение
00:29:42
показывает
00:29:43
и pixels per unit мультиплеер этот мы
00:29:46
можем изменять количество пикселей в
00:29:48
unity этого будет меняться сама текстуру
00:29:51
конечно давайте только наивный
00:29:56
пересоберём канал здесь
00:30:37
вот что у нас есть помимо этого примем
00:30:43
самой картинки компоненты которые мы
00:30:45
добавили у нас также есть rect transform
00:30:49
то есть все элементы всякий может
00:30:52
которые мы будем добавлять внутри
00:30:53
канвасов будут иметь место transform а
00:30:56
rect transform
00:30:57
зачем нам принципе нужен ну помимо того
00:30:59
что мы можем задавать здесь ширину и
00:31:01
высоту мы также можем задавать ему
00:31:03
привязку к своему родительскому элементу
00:31:07
вот нас есть элемент который находится
00:31:10
внутри нашего канваса и мы можем с
00:31:13
помощью
00:31:14
откликов полом вот этому интерфейсу
00:31:17
открыть интерфейс привязки что он на
00:31:23
может говорить тут он нам рассказывает о
00:31:25
том что
00:31:26
куда мы можем за и корить наш rect
00:31:31
transform по дефолту он заикой он в
00:31:35
центр на терне
00:31:36
центр родительского объекта но мы также
00:31:38
можем прикрыть его например краю просто
00:31:41
кверху к центру либо к верху справа ну и
00:31:44
также другим странам что это значит это
00:31:50
значит что при изменении размера
00:31:52
родительского зрительского контейнера он
00:31:57
у нас будет привязан к той точки куда
00:32:02
ему его привязали вот прямо сейчас мы
00:32:03
его привязали слева сверху и когда мы
00:32:07
будем менять размер канва сам он всегда
00:32:14
будет находиться именно там
00:32:22
то же самое справедливо для элементов
00:32:27
которые находятся
00:32:28
но не не в самом конверсия в любых
00:32:31
других rect transform
00:32:32
то есть это такая относительная штука
00:32:35
есть мы можем здесь создать еще один
00:32:39
имидж и привязать его например к правому
00:32:46
нижнему краю вот и при изменении размера
00:32:53
его редиска в элемента он будет при этом
00:32:56
именно к нему вот и заметьте что теперь
00:33:04
получается когда мы меняем привязку
00:33:06
меняем якорь у нас меняются еще и
00:33:08
значение вот этих переменных то есть эта
00:33:17
позиция но она уже будет рассчитываться
00:33:18
относительно нашего якоре если мы
00:33:24
привязали пример другую сторону то
00:33:25
видите сам позишн тоже поменялся
00:33:27
потому что абсолютная позиция не
00:33:29
поменялось но относительно его якоря
00:33:32
позиция применялась поэтому icepeak или
00:33:35
другие помимо того что мы можем менять
00:33:40
ему привязку вот так вот просто мы еще и
00:33:45
можем как бы не этим у привязку
00:33:48
и говорить ему что его нужно
00:33:49
растягиваться что это значит вот можем
00:33:53
например привязать этот элемент
00:33:56
к верху и сказать что по горизонтали он
00:33:59
должен растягиваться вместе со своим
00:34:01
родительским контейнером такая вот будет
00:34:04
у нас такой вот якорь когда морить
00:34:07
ильский компонент будем менять то
00:34:09
дочерней также будет тянуться вместе с
00:34:10
ним и заметили что здесь у него уже тоже
00:34:14
изменились сами настройки то есть если
00:34:17
мы просто привязывали ведь была позиция
00:34:20
ширина высота то когда мы делаем стричь
00:34:24
то здесь уже будет
00:34:25
отступ слева справа и его позиция
00:34:32
вертикальная и высота позиция
00:34:37
вертикальный сохранится потому что мы
00:34:39
именно по горизонтали его растягиваем
00:34:41
если бы мы не растягивая его например
00:34:43
здесь по вертикали то увидите у него
00:34:45
сохранится позиция по иксу и ширина но
00:34:48
притом начнутся отступы получается
00:34:51
сверху и снизу но и свою очередь он
00:34:54
будет смерть свои размеры когда мы будем
00:34:57
менять
00:34:58
именно высоту родительского объекта
00:35:03
показан тоже ничего не меняется ну и еще
00:35:06
один способ это мы можем сделать его во
00:35:10
все стороны растягиваем его так немного
00:35:17
сделал дочернего элемента и родительской
00:35:21
растягиваем
00:35:23
и ведь и меняется и его размер это супер
00:35:29
мощный инструмент который позволяет
00:35:30
позиционировать элементы относительно
00:35:33
друг друга и делать такую резиновую
00:35:35
верстку которая будет растягиваться
00:35:39
зависимости от экрана или зависимости от
00:35:40
контента который мы будем помещать в эти
00:35:43
лайки наши что очень удобно и опять же
00:35:52
встреч горы
00:35:54
они могут привязываться ко всем сторонам
00:35:56
родительского элемента
00:36:00
сверху середине снизу слева середине
00:36:04
справа что тоже является очень удобно
00:36:07
вот парень якорей мы также можем
00:36:10
настраивать rect transform а его pivot
00:36:13
pivot это та точечка это то грубо говоря
00:36:18
где начинается наш наш объект . его
00:36:23
привязки сейчас она установлена 05 05 .
00:36:26
центре нашего ректа вот это не всегда
00:36:29
бывает удобно например мы хотим
00:36:30
поставить
00:36:31
привязать наш красный квадрат к левому
00:36:35
верхнему краю
00:36:38
его рейтинг а его элемента как это
00:36:41
сделать так вот просто так привязать его
00:36:43
не получится потому что цифры не
00:36:47
ровненькие совсем но мы можем поменять
00:36:51
ему пьет и поставить его например по
00:36:54
иксу 0 теперь если мы поставим позицию у
00:36:58
него 0 0 то он будет точно пример край
00:37:02
по игреку мы можем сделать pivot ему
00:37:05
один и он также будет эти привяжем уже к
00:37:10
вот этой точке своему левому верхнему
00:37:12
краю и также мы можем пилот переносить
00:37:16
его в разные стороны и тем самым менять
00:37:19
точку привязки самого нашего элемента
00:37:21
изменяя его точку привязки мы
00:37:23
естественно и меняем его относительные
00:37:26
параметры его якоря видите какие здесь и
00:37:31
сейчас настройки если мы перенесём . то
00:37:34
настройка поменяются ну что логично и
00:37:37
вся система
00:37:38
рик transform of она именно относительно
00:37:40
они абсолютно на своих лидерских
00:37:44
элементов рассчитывается так могут
00:37:52
проектов формы на текущий момент
00:37:54
наверное все
00:37:55
и давайте уже начнем мир стать нашей
00:38:01
менюшки и походу еще посмотрим разные
00:38:03
другие компоненты
00:38:10
вот но еще давайте немножко прервемся на
00:38:13
вопросам которые вас появились к
00:38:16
текущему моменту
00:38:25
пишите вопросы а пока давайте небольшой
00:38:28
рик об для того чтобы мы смогли сделать
00:38:33
что-то съем нам нужно добавить компонент
00:38:36
canvas
00:38:37
который находится ей canvas он
00:38:42
представляет собой компонент который мы
00:38:44
можем настраивать режимы отображения
00:38:46
канваса серьезных режима
00:38:48
поверх всего где-то внутри камеры
00:38:52
качестве плейна либо просто в 3d мире
00:38:54
также у нас есть канва скейлер где мы
00:38:57
указываем как у нас будет скалится наш
00:39:00
canvas при изменении размеров экрана
00:39:04
здесь мы можем указывать по какому из
00:39:07
параметров ширины и высоты он будет с к
00:39:10
лицам кому он будет
00:39:11
и количество пикселей две нити самого
00:39:15
канваса и так здесь у нас присутствует
00:39:17
компания cray кастер который позволяет
00:39:18
нам принимать такие клики на наш камаз
00:39:21
вот при нем этого еще идет компонент
00:39:24
ивентисты который связывает нашу систему
00:39:28
старую на новую систему с энтого я
00:39:32
системой канваса и его объектов его
00:39:36
кнопок
00:39:37
слайдеров и переключателей внутри
00:39:41
канваса есть любой game образ который
00:39:45
находится внутри канваса имеет место
00:39:47
обычного трансформа rect transform
00:39:49
который мы можем настраивать его якоря
00:39:52
анкоры для того чтобы привязывать
00:39:55
разные объекты к разным позициям и вы их
00:39:58
родительских элементов и также у него
00:40:01
есть пилот который изменяет точка
00:40:03
привязки самого объекта и еще мы
00:40:07
рассмотрели компонент имидж которые
00:40:10
можем оказывать текстурки если мы
00:40:13
правильным образом нарежем эти текстурки
00:40:14
то они будут красиво у нас тянутся
00:40:22
такой вот река по допросам пока вопросов
00:40:31
нету давайте дальше давайте дальше так
00:40:38
что я хотел еще уточнить да еще я хотел
00:40:41
уточнить что наверное все таки вот здесь
00:40:47
стоит указать размер нашего
00:40:51
[музыка]
00:40:53
нашего приложения которые мы указываем в
00:40:57
скале и низко или как компонент
00:41:02
назывался давайте откроем посмотрим
00:41:10
написал перчатка камерам чтобы у нас
00:41:14
были более
00:41:16
соответствовали размеры нашего наших
00:41:20
текстурок с нашим миром здесь 320 на 180
00:41:28
вот и здесь мы также укажем
00:41:31
лекарственное значение 320 на 180 тогда
00:41:34
все дочерние элементы у нас будут
00:41:38
помещаться в меньшее количество места и
00:41:44
края будет более видны ты сама картинка
00:41:48
будет более приближена к этому пикселя
00:41:52
ту который у нас есть итак давайте
00:41:57
создадим менюшку самую простую как я их
00:42:00
обычно создаю я создаю дочерний элемент
00:42:04
о канваса
00:42:06
и называя его так как хочу называть свои
00:42:09
окном
00:42:11
мы меню window будет
00:42:13
и я его делаю тянущимся во все стороны и
00:42:17
растягиваю его на ширину всего канваса
00:42:22
такое внутри него можно уже поместить
00:42:27
объект который назовем панели который
00:42:34
будет бэкграундом для наших кнопок
00:42:36
которые мы разместим
00:42:38
и саму панельку можно привязать просто к
00:42:41
центру что-нибудь типа такого и внутри
00:43:01
панельки мы уже будем располагать наши
00:43:04
элементы кнопки и тексты давайте наверно начнем с
00:43:10
текстов ей текст это самый простой и
00:43:16
базовый текст который поддерживает unity
00:43:18
компонент который мы можем написать
00:43:21
что-то непосредственно в самом тексте
00:43:22
выбрать шрифт выбрать стиль этого шрифта
00:43:25
его размер spacing
00:43:26
между строками и галочка rich text
00:43:30
которая позволит вставлять там внутри
00:43:33
текста
00:43:34
разные html-теги типа color болт и
00:43:36
прочего вот и также у нас мы можем
00:43:40
настраивать так же как в ворде и либо других
00:43:42
текстовых редакторах как у нас будет
00:43:44
отображаться наш текст
00:43:45
относительно своего ректор это transform
00:43:50
и
00:43:52
[музыка]
00:43:53
но еще настройки от того как мы будем
00:43:56
справляться с тем когда наш текст будет
00:44:00
переполнять свой
00:44:02
рик transform кто сейчас prop тонн
00:44:05
обрезает of law in будет его переполнять
00:44:10
вот и это если по горизонтали мы смотрим
00:44:13
вот если по вертикали тотан кейт он
00:44:15
обрежет overflow он его начнет
00:44:19
переносить на другую строку вот таким
00:44:23
вот образом то есть настроек не так уж и
00:44:29
много но для наших целей вполне себе
00:44:33
подойдет вот ну еще цвет можно задавать
00:44:39
материал и вот эти вот параметры век
00:44:42
расторгать дамаска было ней есть
00:44:43
практически на всех ее элементов которые
00:44:45
мы будем использовать потому что это
00:44:46
часть базового класса то есть можно ли
00:44:50
по этому тексту кликать по этому
00:44:54
элементу и участвует ли он в
00:44:56
маскирование давайте сейчас он настроен
00:45:04
привяжем его к верху в нашей панельки
00:45:12
укажем здесь наш шрифт
00:45:41
нормально плевать на еще бы архи
00:45:49
самых яик делать все контейнеры человек
00:45:53
подобными названиями человека понятными
00:45:55
вот иначе потом можно очень легко
00:45:57
запутаться
00:46:00
как и всегда порядок нужен везде
00:46:02
завернула header дальше мы познакомимся
00:46:08
с таким компонентам как батон это
00:46:15
базовая заготовка для кнопки которая
00:46:20
собственно имеет компонент матом со
00:46:23
своими настройками и внутри имеет
00:46:25
компонент текст сделаем заменим шрифта
00:46:32
текста из назовем его старт у самого
00:46:39
батоном есть и меч в котором
00:46:41
отображается сам спрайт которой мы будем
00:46:43
рисовать и компонент с кнопкой у него
00:46:48
есть несколько режимов
00:46:49
того как он будет меняет свои свою форму
00:46:53
в зависимости от интеракций пользователя
00:46:55
call or thing это меняет как раз такие
00:46:58
вот этот параметр n то есть подкрашивает
00:47:01
немножко кнопку значит посмотрим как это
00:47:04
выглядит
00:47:09
то есть вот видите он устанавливает вот
00:47:11
эти вот цвета принтер акциях либо это
00:47:14
может быть
00:47:15
спрайт swap и тут мы прям будем целиком
00:47:19
менять справиться с одного на другой и
00:47:21
сейчас ничего не установлено поэтому
00:47:23
метан не будет и либо они мишин то есть
00:47:26
мы можем сгенерировать анимацию тут есть
00:47:42
нос поэтому небольшим и видите это
00:47:46
аниматор и несколько анимаций и можно
00:47:56
здесь настраивать нашу кнопку как-то
00:48:00
более хитрым но как правило именно ним
00:48:04
attorney часто используется
00:48:07
я предлагаю использовать
00:48:10
спрайт swap потому что у нас в ресурсах
00:48:15
уже есть кнопочки
00:48:17
разные с разными состояниями пойдем
00:48:21
текстуры и wii и здесь у нас есть
00:48:33
несколько кнопок
00:48:34
melobo том грин батон и команда там
00:48:46
здесь я хотел показать что есть просто
00:48:48
разные подходы к тому как собственно
00:48:51
кнопки реализовывать то есть мы можем
00:48:52
сделать например одну кнопку такую
00:49:01
зелененькую как только давайте нарежем
00:49:12
его права видите также
00:49:17
серединку выбираем для того чтобы могли
00:49:20
ее растягивать
00:49:53
вот как тим тот так вот либо мы можем
00:50:00
сделать
00:50:04
комбатом также и нарезать но потратите с
00:50:25
помощью tinto
00:50:43
понятно что они будут немножко
00:50:44
по-другому выглядеть но тем не менее это
00:50:47
тоже неплохой вариант когда мы можем
00:50:49
использовать одну текстуру просто в гск
00:50:53
или кнопки и раскрашивать ее уж дальше
00:50:56
так как мы захотим просто разные подходы
00:51:00
такой вот достаточно экономичен но мы
00:51:02
должны будем подбирать необходимые нам
00:51:05
советы принципе мы будем ограничены
00:51:08
скажем так в разбросе
00:51:12
кнопок то есть мы не можем здесь сделать
00:51:14
например кнопка кнопку с несколькими
00:51:16
цветами одновременно но вот для таких
00:51:18
однотонный кнопок это
00:51:20
однотонных принципе элементов и а я это
00:51:22
платье хорошо подходит я буду
00:51:24
пользоваться дальше
00:51:25
команда с нами вместо обычных кнопок и
00:51:29
здесь мы можем выбрать спрайт swap и
00:51:34
указать ему собственно разные состоянием
00:51:39
нашей кнопки
00:51:51
так селектор присед
00:51:58
еще и highlight тоже
00:52:01
вот и как-то теперь будет клеить ну вот
00:52:13
как то так
00:52:19
так вы еще конечно нужно все вот эти
00:52:21
кнопки их тоже также разрезать чтобы они
00:52:24
правильно таились у нас не они тайны
00:52:28
леся растягивались
00:52:48
теперь он не должна выглядеть более
00:52:50
consisting старт потому что еще есть и
00:53:10
кнопки все эти кнопки кал бег на клик то
00:53:15
есть сюда мы можем добавить также как и
00:53:17
наши кастомные компоненты какой-то call back
00:53:20
и по клику на ту кнопку его вызвать этим
00:53:24
мы будем воспользуемся чуть-чуть попозже
00:53:28
сейчас же у нас у нашей кнопки есть
00:53:31
проблема проблема это находится в
00:53:34
области текста то есть тот момент когда
00:53:39
мы нажимаем на кнопку
00:53:41
текст никуда не двигается давайте эта
00:53:45
проблема решил как мы можем ее решить мы
00:53:48
можем просто взять и написать
00:53:51
дочерней компонент который будет
00:53:53
последовать от нашей кнопки обычной но
00:53:55
будет реализовывать
00:53:56
дополнительное поведение
00:54:01
этих pixel plus и ведем пакет ей суда мы
00:54:10
заведем пакет виджет и здесь у нас будет
00:54:20
sky будет кастом-байк называться вот
00:54:28
наследовать мы и будем от баттона и
00:54:34
здесь у нас будет просто
00:54:36
два поля game он же с нормальным стоит
00:54:43
там и game обжиг с select ну там стоит
00:54:45
там и зависимости от состояния кнопки мы
00:54:47
будем включать 1 и выключать другой как
00:54:52
мы поймем что у нас случилось или кто-то
00:54:56
кнопка или нет для этого мы
00:54:59
переопределим пункцию даст интернешнл
00:55:09
как раз так называется пена принимает 2
00:55:14
параметра понятно кнопка должна быть из
00:55:28
пакета
00:55:29
in your bottom теперь все правильно два
00:55:38
таких параметра принимает методу state
00:55:40
to me shen и здесь мы можем просто
00:55:51
посмотреть на state первых вызвать
00:55:58
родительский успеть традицию чтобы не
00:56:00
потерять собственно сам функционал но
00:56:06
теперь мы смотрим normal
00:56:09
актив стоит равно равно будет не присед
00:56:19
а select сад актив присед вот так
00:56:39
вот такие два состояния добавим и теперь
00:56:53
мы сможем добавить тут два текста и
00:57:06
заменить здесь кнопку вот он есть весь
00:57:15
мы сталкиваемся с расчетной проблемой у
00:57:18
нас кастом батон сейчас обрабатывается с
00:57:23
помощью и гитара кастомного или the
00:57:28
script on bottom кредитов и он не
00:57:31
предполагает наличие собственного двух
00:57:32
наших полей которые добавили для того
00:57:35
чтобы это поправить нам нужно создать
00:57:37
наш еще один кастом editor для этого мы
00:57:42
создаем директорию editor виджет потому
00:57:47
что в ней будет лежать на скот который
00:57:48
должен работать только в редакторе вот и
00:57:54
пишем кастом факт он editor чтобы
00:58:01
сохранить весь функционал editor от
00:58:03
обычной кнопки мы последуем его от
00:58:06
бас-гитара только такой вот
00:58:12
и можем даже перенести части о настроек
00:58:16
трибутов 1 эта каста editor это мы
00:58:20
указываем для какого компонента мы будем
00:58:23
использовать данный editor для кастом
00:58:28
батоном и второе ты будет открыт этих
00:58:30
multiple jacks то значит что мы можем
00:58:31
выделить несколько кнопок и
00:58:32
редактировать их вместе и теперь что нам
00:58:37
нужно сделать нам нужно здесь
00:58:39
переопределить метод он инспектор гуин и
00:58:52
и в нем мы должны будем нарисовать наши
00:58:55
два property который мы здесь объявили
00:58:57
normal и пресс от этого мы воспользуемся
00:59:03
где торгуют паперти field из ударов
00:59:08
сериала ситаджи gti найдем property с
00:59:11
нужным нам названием
00:59:13
и пресс-центр а теперь он нас к
00:59:19
запустится у нас начало поищет эти
00:59:23
property
00:59:24
и от рисует нам их а потом от рисует уже
00:59:27
то что заложено в нашем базовом классе
00:59:42
отвинтим теперь у нас добавились 2
00:59:44
паперти которых у нас не было вот еще
00:59:46
после того как мы адресовали сами
00:59:48
property на сериалы забыл объекте нам
00:59:50
нужно вызвать метод
00:59:53
а плохим одевали properties для того
00:59:54
чтобы сохранить изменения если вдруг мы
00:59:56
собственно как-то их предназначены
01:00:03
теперь норм обозначаем сюда 30 назначаем
01:00:08
судам
01:00:28
текст няется
01:00:30
[музыка]
01:00:33
нужно спать вообще сделать так это будет
01:00:50
видно работает как мы предполагали целом
01:01:02
это не самый плохой но и наверное самый
01:01:05
лучший вариант как реализовать эту
01:01:07
кнопку можно менять его позицию конечно
01:01:09
текста тогда нам не нужно будет уже два
01:01:12
текста одновременно но так тоже можно ли
01:01:15
за одно потренировались писать кастомные
01:01:17
и гитары и что мы сделали мы создали
01:01:21
кнопку свою наследника от ваза класса
01:01:24
батон добавили сюда два параметра то
01:01:28
есть и мог жекаты с текстовыми полями и
01:01:31
включаем-выключаем их когда у нас
01:01:34
имеется стоит самой кнопки для того
01:01:36
чтобы отобразить эти два поля мы
01:01:39
добавили кастомный editor картон и
01:01:44
редактор для нашей кастомной кнопки где
01:01:47
мы сначала нашли нужный нам попы
01:01:50
property
01:01:51
сериала из это джек тем связанным с вот
01:01:53
с этим классом кастом батон и через где
01:01:57
торгуют мы их отрисовали а потом
01:01:59
проверили изменение если стакать или их
01:02:01
на наш герой давайте сделаем еще
01:02:10
несколько кнопок
01:02:44
но контролировать самому как
01:02:47
распределяется вот эти кнопки
01:02:49
настраивайте между ними разную позицию
01:02:52
меня как не очень хочется это не очень
01:02:54
удобно и специально для этого у нас есть
01:03:00
отдельный компонент называется он
01:03:08
vertical гроб вертикали ел гроб что он
01:03:13
делает он занимается тем что
01:03:19
групп грэм менеджер позиции своих
01:03:23
дочерних элементов выберите мы внутрь а
01:03:30
я в группы
01:03:31
добавили несколько элементов и он сразу
01:03:33
же им перерисовал их позиции вот и
01:03:35
теперь настраивать их позиции мы можем
01:03:37
уже с помощью настроек этого компонента
01:03:39
здесь нас есть поединке
01:03:43
слева справа справа будет потому что у
01:03:49
нас элемент такой сверху ну и
01:03:53
соответственно снизу есть на spacing это
01:03:57
количество места между нашими элементами
01:04:00
вот и у нас есть элемент то что но
01:04:03
сперва очередь интересует это то как у
01:04:05
нас будет располагаться элементы внутри
01:04:09
нашего под rect transform а ты нашей
01:04:11
группы мы их можем либо прижимать слева
01:04:15
сверху слева с центром слева справа ну и
01:04:21
так же по центру слева справа и снизу
01:04:23
слева справа либо по центру нас
01:04:26
интересует не дал центр вот и следующее
01:04:30
что нас интересует
01:04:31
это вот блок этих параметров что они
01:04:37
означают
01:04:38
чаял force expand это значит то должны
01:04:43
ли мы
01:04:44
распределять равномерно наш это черни
01:04:48
элементы по всему по всей доступной
01:04:53
площади нашего rect transform и либо
01:04:56
мысли мы убираем галочку с высоты
01:04:58
то мы просто прижимаем их максимально
01:05:02
плотным друг другу и здесь мы можем
01:05:03
обыграть уже с прессингом расстояние
01:05:05
между ними вот либо не будет равномерно
01:05:09
распределены если мы добавим сюда еще
01:05:11
один кнопку то она также будет добавлено
01:05:14
тех пор пока они все будут лазить то же
01:05:20
самое с ириной отлучит просто не будет
01:05:28
так работать и следующий параметр
01:05:33
который нас интересует это child control
01:05:36
чём цель что он означает это будем ли мы
01:05:39
контролировать с помощью layout группы
01:05:43
размеры наших дочерних элементов если мы
01:05:47
например включим здесь шину вы видите у
01:05:50
нас все начальные элементы
01:05:53
выросли до ширины
01:05:56
нашего контейнера нашей вертикальной
01:05:58
группы он если мы включим за тут-то он
01:06:01
также наши вид их да давайте необходимые
01:06:06
встретив вот и таким образом мы можем
01:06:12
задавать и размеры и позиционирования
01:06:15
внутри нашего вертикальной группы что-то
01:06:18
уже очень удобно вот и само вертикальную
01:06:20
группу мы с позиционируем относительно
01:06:22
нашего носитель на нашей панельки
01:06:25
например вот так чтобы она растягивалась
01:06:27
вместе с ней не смотрите что у нас
01:06:29
получилось заголовок мы приезжали
01:06:33
сверху вертикальную группу мы
01:06:36
растягиваем с нашим нашей панельки
01:06:40
теперь мы можем изменять размер панельки
01:06:43
и сам интерфейс нас становится таким
01:06:46
резиновым
01:06:51
тоже бывает часто удобно так ну и
01:07:00
давайте теперь настроим еще и кнопки
01:07:04
общем у нас будет желтенький давайте exe
01:07:09
будет красный и мне бы хотелось
01:07:18
сохранить этот цветовой код на
01:07:20
протяжении всей игры для того чтобы
01:07:22
постоянно не лезть вот в эти кнопки мы
01:07:24
можем сделать следующую штуку мы можем
01:07:27
сделать из троеточием при выборе цветом
01:07:30
и создать новую библиотеку цветов
01:07:36
давайте сохраним ее какой-то файл 2 мы и
01:07:39
потом курс вот это новая библиотека
01:07:46
цветов с осталась она у нас
01:07:50
а вот здесь во вкладке editor и теперь
01:08:01
что мы можем сделать мы можем просто
01:08:03
взять и сохранить в нее все наши цвета
01:08:05
кнопок вот и теперь когда мы создадим
01:08:14
какую новую кнопку мы можем просто
01:08:19
дефолт нами работать либо выбрать вот
01:08:21
bottom covers и указать ей нужный цвет
01:08:27
что тоже бывает очень удобно с этим
01:08:40
вроде разобрались давайте вопросом если
01:08:48
какие-то вопросы на текущий момент по
01:08:53
кнопкам по текстам по rect transform'ом
01:08:57
пиво там и прочему принципе если кто-то
01:09:00
хотя бы когда-то пытался что-то верстать
01:09:02
в html то наверное наймет найдет очень
01:09:06
много аналогий с тем что мы имеем здесь
01:09:10
отмените ульяне
01:09:14
малыш там или она скорее каких-то увы
01:09:17
civic
01:09:18
тузах для штабеля чем типа старинного
01:09:22
фронта
01:09:31
будем ли мы использовать текст меж про
01:09:35
наверное нет принципе мы конечно можем
01:09:38
его использовать и вы можете его
01:09:39
использовать своим проекте
01:09:40
но особого буста конкретно нашем
01:09:43
маленьком проекте он не даст потому что
01:09:46
у нас не так много текста будет но огня
01:09:48
текстовых полей на единицу площади да и
01:09:51
каких-то особенных эффектов на этих
01:09:54
текстах мы тоже вроде как не планируем
01:09:56
поэтому я просто смысла не вижу но хотя
01:09:59
как бы нет ничего зазорного в том чтобы
01:10:01
его использовать у него есть свои
01:10:03
ограничения но как инструмент он гораздо
01:10:05
лучше чем обычный текст
01:10:06
а наличие большого количества канвасов в
01:10:13
сцене как-то сказывается на
01:10:14
производительности но если бы правильно
01:10:17
разделяем весь контент то оно
01:10:19
сказывается положительным образом то
01:10:22
есть чем основной смысл разделять на
01:10:24
canvas и разные элементы из каждое
01:10:28
изменение чего бы-то ни было внутри
01:10:30
канваса то есть например какая кнопка
01:10:33
изменил свой цвет или изменил свою
01:10:36
позицию или что-то еще такое сделала она
01:10:38
создает дети встреч для всего канваса то
01:10:41
есть он помечает вот сюда можно
01:10:42
перерисовать полностью вот перерисовать
01:10:45
полностью весь центр нас очень большой
01:10:48
ей переставать его полностью достаточно
01:10:50
тяжело для нашего компьютера вот поэтому
01:10:52
что мы можем сделать мы можем выделить в
01:10:55
нашем канвасе разделить его на несколько
01:10:57
небольших то есть в идеале статическую
01:10:59
часть день чего плюс-минус не меняется и
01:11:01
выделить например какую-то часть где там
01:11:04
и знаки прогресс бар и
01:11:05
или какой-нибудь их онлайн highlight
01:11:08
туториала постоянно мелькает и что такое
01:11:10
то есть где постоянно идет изменение
01:11:11
параметров элементов внутри canvas а вот
01:11:16
мы и создает дочерней canvas выделяем
01:11:18
его как бы в отдельную зону и получается
01:11:20
у нас
01:11:21
сад берти то есть rehband именно вот
01:11:23
этого маленького кусочка арест человека
01:11:25
на вас не трогается в таком случае мы
01:11:27
можем наоборот получить достаточно
01:11:29
хороший boost производительности
01:11:32
ну а типа делать каждую кнопку своим
01:11:34
канва сет конечно уже выход такого
01:11:37
делать не надо и встречи вопросом был
01:12:05
видимо пока нет давайте продолжим
01:12:06
знакомиться с другими компонентами
01:12:09
которые нам понадобятся при верстке
01:12:19
давайте диване и так познакомимся сейчас
01:12:21
с такой таким дешевым способом добавить
01:12:25
анимацию для наших менюшек наших как он
01:12:29
может в любом случае мы будем их
01:12:31
показывать постоянно постоянно их
01:12:32
скрывать
01:12:33
вот и хотелось бы чтобы не просто так
01:12:35
погружались и все а хотелось бы чтобы
01:12:37
они каким-то образом были анимированы
01:12:39
делали это красиво чтобы будем для этого
01:12:44
делать для этого мы в моей меню window
01:12:49
добавим animator
01:12:57
и в ресурсах создадим folder милой я
01:13:03
создаю на и им его именно в ресурсах
01:13:05
потому что каждый из окон мы будем
01:13:09
загружать из преподов общественно живет
01:13:12
нас просто здесь а мы будем крыть x
01:13:14
префабов и здесь мы создадим
01:13:26
директория bin долбани мишин здесь мы
01:13:36
создаем контроллер и доварить и
01:13:44
несколько анимация создадим
01:13:58
хидан шоу и хайд и давайте назначим что
01:14:17
контроллер
01:14:25
и теперь перенесем наше состояние
01:14:33
дефолта нас будет хитом и
01:14:36
из пенистый то по триггеру мы будем
01:14:38
переходить разные другие состояния
01:14:44
запускать разные анимации
01:15:28
получается что мы из любого сайта можем
01:15:31
запустить состоянии либо хайдом и вошел
01:15:33
а изначально у нас будет стоит хидан то
01:15:35
есть спрятанный и что мы здесь будем
01:15:39
делать добавим сюда на панель компонент
01:15:53
canvas групп cargoes группы такой
01:15:56
специальный компонент который во-первых
01:15:57
позволяет отделить один canvas от
01:15:59
другого вот но помимо этого у него еще
01:16:02
есть альфа что очень круто и мы сделаем
01:16:09
теперь в анимации
01:16:13
hidden первый кадр который будет нам
01:16:17
выключать как раз таки альфа на старте у
01:16:24
нас будет все будучи нам но во время шоу
01:16:35
включаем запись альфу мы дергаем на
01:16:38
единичку то есть включаем его и начиная
01:16:46
от анимировать как мы будем анимировать
01:16:48
очень просто возьмем skrill началом
01:16:52
будет 0 то он будет 12 потом единичка
01:17:11
такой вот эффект в хайди будет
01:17:19
что-нибудь другое войти например в хайди
01:17:27
[музыка]
01:17:32
хайди мы сделаем точку привязки внизу да
01:17:42
и сначала мы его приподнимем а потом
01:17:57
опустим в самый низ а кто купил touch
01:18:00
поменяем
01:18:10
так наша
01:18:15
так чтоб наверняка ну давайте на всяких
01:18:26
правил еще и спрячем в конце вот и что
01:18:40
мы будем здесь все делать давайте
01:18:48
создадим базовый компонент который будет
01:18:52
обрабатывать
01:18:54
данное поведение ну например винтов
01:19:06
контроллер не так лучше наверно они мы
01:19:11
этот ведут
01:19:23
смотри здесь мы получим аниматор и на
01:19:50
старте скажем ему шел когда мы захотим
01:20:02
закрыться
01:20:06
то скажем ему хайд и еще мы должны здесь
01:20:23
написать такую функцию
01:20:30
потому что хоть нас операция
01:20:32
несинхронная выполняется какое-то время
01:20:38
не после того как мы полностью закрылись
01:20:44
мы можем уничтожить наше окно например
01:20:50
вот так
01:20:51
и как вы догадались
01:21:01
углу занимает от небольшим он класса не
01:21:04
мешал комплит мы вызовем из ивента в
01:21:07
ходе почему то не то
01:21:28
либо потому что при нем и тут window
01:22:14
вроде бы всем стоит и настроены
01:22:17
правильно на старте мы должны проиграть
01:22:25
сразу же эту анимацию выход давайте
01:22:28
обыграем покупки рексик и сейчас как раз
01:22:32
искал big нажмем школ и теперь данный
01:22:51
аниматор и они мы этот window во-первых
01:22:54
на все окна которые мы будем делать мы
01:22:56
будем исследовать это не имеет винду и
01:22:58
просто добавляется тот аниматор и если у
01:23:00
нас здесь будет контейнер панель то мы
01:23:03
получим эту анимацию для всех наших окон
01:23:05
и собственно давайте еще одна такая
01:23:08
кошечка и сделаем 2 мусор things наш
01:23:20
давайте сделаем сейчас уже две заготовки
01:23:21
под эти окошки
01:23:53
мое меню window и starting windows и
01:24:20
здесь мы меню мы сделаем несколько call
01:24:23
back of который протянем соответствующей
01:24:26
кнопки
01:24:52
можно сделать хитрее и майк window итак
01:24:58
давайте сделаем виртуальному чтобы можно
01:25:03
было бы переопределять вот его на x мы
01:25:10
сделаем клаус переопределим этот метод и
01:25:14
в нем уже непосредственно закроем наше
01:25:16
приложение как поэтому нам сделать в
01:25:23
доме мы должны были сказать о при кришну
01:25:28
кажется клаус нет вот но в редакторе у
01:25:55
нас к сожалению у нас не поймет наш
01:25:58
апликэйшен поэтому мы должны здесь
01:25:59
сделать вот такой блеф и вентилятор и в
01:26:04
нем писать unity иди торпеде the
01:26:09
applications is playing
01:26:15
просто основе проигрывание вот мы должны
01:26:18
обернуть итоге интересно потому что сам
01:26:20
пакет ведь это он нам недоступен при
01:26:22
сборке то есть если мы не сделаем этого
01:26:24
то вот на этой строчке при сборке у нас
01:26:26
все развалится сборки мы конечно еще не
01:26:30
скоро дойдем но тем не менее уже сейчас
01:26:33
лучше всего соломки подстелить вот
01:26:36
получается что мы когда нажмем exit
01:26:37
ну и ждем прививать анимацию закрытия
01:26:40
этот момент когда мы закончим
01:26:41
проигрывать мы просто выйдем из был о
01:26:43
вине
01:26:45
вот теперь давайте он
01:26:49
start game реализуем мы здесь все просто
01:26:55
менеджер вот сцен мой вологин или или
01:27:24
или давайте учета то перенесем это
01:27:31
просто бы называть атаки будут
01:27:37
покрасивше ну либо ладно давайте сейчас
01:27:46
прям совсем все показать и сделаем
01:28:03
клаус экшн
01:28:08
создадим здесь такое замыкание фиксить и
01:28:19
создадим другое замыкание что мы сделали
01:28:35
когда мы нажимаем на кнопку exit мы
01:28:38
создать создаем class action который мы
01:28:41
будем выходить
01:28:42
записываем его переменную class action
01:28:45
ты сюда помещаем кот кот такой вот
01:28:49
анонимную функцию
01:28:50
когда мы нажимаем start game
01:28:54
там и в кодексе не в котла дневные
01:28:57
функции передаем сюда загрузку нового
01:28:58
уровня тебе получается 1 бороздах
01:29:00
поведения на закрытие и они сработают
01:29:03
уже именно после того как мы проиграем
01:29:05
саму анимацию вот и теперь давайте
01:29:09
покажем наш наши опции этого мы
01:29:20
воспользуемся классом ресурсов и скажем
01:29:32
ему лот
01:29:38
game объект и путь до нашего географов
01:29:52
потом найдем canvas
01:29:55
инстанции руин один гейм объект в этом
01:30:00
канвасе
01:30:07
ну так порой похож попробуем так только
01:30:19
давайте я считал все еще за prev 1
01:31:00
как-нибудь вот так теперь у нас есть два
01:31:09
префаба но они - изначально будет нашей
01:31:13
сцене мы именем на 2 мы загрузим по
01:31:16
клику на кнопку общем давайте этот клип
01:31:19
про кинем судам этот виду
01:31:41
[музыка]
01:31:43
main menu виду
01:31:53
и выбираем здесь он шел сидиус здесь мы
01:32:02
выбираем он exit
01:32:09
здесь мы выбираем он стал мы давайте
01:32:21
смотреть так вы давайте с этим теперь
01:32:32
просто закроем с этими сами
01:33:03
вот такие пироги и все вроде даже
01:33:06
работает давайте небольшой рик от что мы
01:33:15
сделали мы добавили аниматор котором
01:33:21
давайте несколько анимации спрятанный
01:33:24
хайты шел показатель и спрятать вот в
01:33:30
этом они матери мы настроили собственно
01:33:33
сами анимации которых мы использовали
01:33:36
назвать одного этого уже контейнера по
01:33:39
новым и анимировали у него
01:33:41
скарл и также еще мы анимировали
01:33:45
переключаем к у canvas группа его альфу
01:33:49
включаем ее и выключаем вот но для тому
01:33:54
что у нас в наших всех окнах есть один и
01:33:58
тот же контейнер с названием панель у
01:34:00
которого есть собственно rect transform
01:34:02
и canvas групп то данный аниматор мы
01:34:06
можем использовать для любых наших
01:34:08
хоконом ладно чтобы у них была
01:34:10
одинаковой структура и для того чтобы с
01:34:13
этим аниматорам работать мы создали
01:34:15
базовый класс анимейт винду который мы
01:34:17
на старте получаем аниматор ставят этот
01:34:20
триггер шоу вот и во время закрытия мы ставим 3
01:34:24
греха it который запускает нам анимацию
01:34:26
закрытия самом конце анимации закрытия у
01:34:30
нас есть небольшим и винт который
01:34:33
дергает метод он клауса не дышит комплит
01:34:35
у класса animated винду который мы уже
01:34:39
непосредственно разрушаем наш объект
01:34:43
бэйн меню window создаёт отдельный
01:34:47
контроллер для мы и меню window который
01:34:50
обрабатывает клике на кнопки кнопки нас
01:34:54
три метода обработки нас тоже 3 на он
01:34:57
шел settings
01:34:58
мы загружаем из ресурсов с этим x window
01:35:02
этот префаб находим canvas в котором
01:35:06
будем его инстанциировать
01:35:08
и создаем новый объект внутри канваса на
01:35:13
start game
01:35:14
мы записываем тот код который должен
01:35:19
будет вызываться у нас после того как
01:35:20
вас проиграется анимация
01:35:22
закрытие окна мы здесь просто
01:35:25
загружаем сцену level 1 вот и начинаем
01:35:30
закрывать окошечко то есть аниматору говорим сет
01:35:34
триггер хайд тот момент когда у нас
01:35:37
анимация закончится
01:35:40
мы вызовем клаус action тонкости можно
01:35:43
перенести повышен что он сначала
01:35:45
class action взялся потом уже сзади
01:35:47
строился наш объект это непринципиально
01:35:52
но лучше перестраховаться
01:35:53
мне кажется вот и мы вызываем action
01:35:57
которые мы записали по нажатию на кнопку
01:35:59
и называем закрытие окна
01:36:03
вот на выходе мы также записываем плюс
01:36:07
экшн то есть вход который вызовется
01:36:10
когда проиграется анимация закрытие код
01:36:14
который будет выходить из приложения то
01:36:16
есть апликэйшен пьют скажем так
01:36:20
стандартной комплектации то если у нас
01:36:21
будет запускаться приложение не в
01:36:24
редакторе вот и отдельно сделали блок
01:36:25
что если у нас мы запускаемся редакции
01:36:28
то он вы просто
01:36:29
отжимаем кнопку play у редактором и это
01:36:35
так работает
01:36:41
и вот такие пироги
01:36:47
давайте несты какие то вопросы по
01:36:49
текущей релиза цен вопросы вопросы
01:37:54
но пока
01:37:55
думаете насчет вопросов я расскажу пока
01:37:58
об еще одном компоненте
01:38:03
мы создали собственный компонент
01:38:06
класс settings вот у нас есть такой и мы
01:38:12
бы хотели диодов добавить какие-то
01:38:14
настройки именно настройки звука и
01:38:18
настройки звука я хотел бы чтобы они
01:38:20
были реализованы в качестве ползунков
01:38:26
для того чтобы габаритам ползунок у нас
01:38:29
есть базовый компонент для это
01:38:31
называется слайдер и вот так выглядит но
01:38:35
конечно на такой слайде а не подойдет
01:38:37
нам нужно что-то другое слайд в целом
01:38:39
высота интересная штука есть целая куча
01:38:43
разных при детей как он меняется как он
01:38:46
реагирует на нажатие ну то есть также
01:38:48
как и в кнопке принципе но помимо этого
01:38:52
он еще и может визуализировать свой
01:38:54
прогресс
01:38:56
вот таким вот образом
01:38:59
что нам от него нужно нам от него в
01:39:02
принципе можно удалить хилари
01:39:04
потому что нам из меняться не будет и
01:39:06
заменить background качество гранда у
01:39:10
нас будет использоваться следующая
01:39:12
текстурка
01:39:18
слайдер horizontal только мы опять же
01:39:21
должны порезать проведу
01:39:28
очень такого чем нужно с размером гадать
01:40:03
так пускай будет так
01:40:07
качестве хаббла мы будем использовать
01:40:09
другую текстурку
01:40:10
называется она слайдер horizontal ходу
01:40:18
дела ведь призеров аспект чтобы размер
01:40:21
она не поменяла вот и настраиваемые так
01:40:30
идеально теперь смотрите это слайд он бы
01:40:37
двигаться туда и чудом что принципе нам
01:40:39
нужно но мы еще можем немножко потянуть
01:40:42
хэндл слайд арья которая ограничивает
01:40:47
движение нашего slugterra
01:41:00
например как-нибудь вот так туда чудом
01:41:14
вот так же мы добавим сюда ещё один
01:41:17
текст назовем его просто лыбу ты
01:41:39
принесем его куда-нибудь вот сюда также
01:41:55
делаем и еще мы сделаем текстовую поле
01:42:03
быльем
01:42:12
которые она собственно будет отвечать за
01:42:14
то сколько собственно будет процентов в
01:42:22
музыке и в суффиксах
01:42:26
как-нибудь вот так
01:42:51
над и теперь мы можем это все объединить
01:42:54
в один гейм облик давайте как-нибудь вот
01:43:04
так вот сделаем и назовем это выйду
01:43:19
наверное
01:43:26
ты просто его возьмем на дублируем и
01:43:31
напишем здесь не грузчика с фикс и все
01:43:38
это даже можно поместить в vertical
01:43:40
группам
01:44:20
медиацентр
01:44:32
вот каким то вот так будет красиво ты
01:44:51
теперь когда мы нажимаем absence мы
01:44:53
можем здесь сладит досюда вот а
01:44:58
привязывать это уже к коду мы будем
01:45:00
наверное уже в следующей лекции
01:45:05
давайте вопросом если в игре много
01:45:10
разных менюшек то их все можно так
01:45:12
заранее заготовить и каждый вызвать на
01:45:14
одном канвасе
01:45:15
когда они нужны будет через у слот да
01:45:18
собственно мы вот такой философии будем
01:45:22
придерживаться я думаю в наших нашей
01:45:26
игре тут есть как бы свои процент конца
01:45:28
опять же то есть если мы вызываем их
01:45:31
через ресурсы
01:45:32
то получается мы нагружаем несколько
01:45:34
процессор есть мы каждый раз должны
01:45:35
пойти на диск взять нужно нам префаб
01:45:39
инстанциировать его вот но с другой
01:45:41
стороны нам единовременно в памяти не
01:45:43
нужно держать все наши окошечке то есть
01:45:47
для нашего проекта кажется что немного
01:45:49
overhead но просто хотелось показать что
01:45:51
через ресурсы можно загружать также еще
01:45:53
и вот наши йорки принципе использовать
01:45:56
эти ресурсы но как бы для маленьких как
01:45:59
так вообще часто делают просто один
01:46:00
canvas в него напихивают разные грим
01:46:03
объект с этими мешками и простаты
01:46:05
включают или выключают
01:46:07
так тоже можно делать для совсем
01:46:08
небольших проектов вот но мы будем
01:46:11
немного более на вручную систему
01:46:12
использовать подумайте может какие то
01:46:39
вопросы есть
01:46:51
впоследствии мы много чего нам к нашей
01:46:53
системе допишем но вот старт у нас будет
01:46:55
такой достаточно простой и прям линиями
01:46:57
и внести все таки много не по теме
01:47:21
нашего проекта просто меня интересует
01:47:23
как организована работа с большим
01:47:25
количеством элементов типа как
01:47:27
экономических стратегиях но в
01:47:29
экономических стратегий от часто
01:47:30
используют как раз таки загрузку из
01:47:33
ресурсов интерфейсов
01:47:35
вот причем там довольно хитро это
01:47:37
сделано там возможно даже в некоторых
01:47:41
некоторых из видов стратегий по крайней
01:47:44
мере встречал такое что они
01:47:47
получается загружает их первый раз а
01:47:48
потом держит их памяти
01:47:50
вот и следующий раз скоро мы открываем
01:47:53
получается это окошечко то она уже
01:47:55
простроена я прогрета и она открывается
01:47:57
статочно быстро вот но тут мы можем
01:47:59
столкнуться с тем что мы если вас прям
01:48:01
очень очень очень много интерфейсов и
01:48:03
они внутри себя
01:48:05
забирают много памяти то мы можем просто
01:48:07
вывести за пределы выступы нам памяти
01:48:09
поэтому например здесь можно добавить
01:48:11
какие-нибудь не рацион и алгоритмы то есть оставлять
01:48:15
памяти только то что часто используется
01:48:17
то есть раз какое-то время
01:48:19
чекать все из интерфейсов которые он
01:48:25
сейчас поймете живут он смотреть когда
01:48:27
последует крался если это очень давно то
01:48:29
выражать например из памяти вот это тоже
01:48:31
вполне валидный
01:48:32
способ оптимизации то есть мы получается
01:48:35
одновременно не держим много ресурсов но
01:48:39
при этом вяжем только то что часто
01:48:40
используем вполне малины и
01:48:44
штука но еще опять же тут нужно подумать
01:48:48
например снова большая игра с большим
01:48:49
количество интерфейсов то возможно нам
01:48:51
стоит написать какую-то систему которая
01:48:53
будет на старте приложения уже открывать
01:48:56
сразу какие-то самые часто используемые
01:48:58
объекты из них доигрывать памяти вот он
01:49:00
просто для быстрого доступа и для более
01:49:03
такого удачного you a & vix скорее даже просто
01:49:07
x user experience офф ну как то так вот
01:49:19
но собственно полиции на это у меня на
01:49:22
сегодня все давайте перейдем в домашнем задании с
01:49:31
[музыка]
01:49:34
моментом por favor
01:49:36
и так домашнее задание собственно с
01:49:45
предстать окно главного меню и окно
01:49:48
настроек
01:49:49
там попутно можно поиграть с разными
01:49:53
встречами с разными на корме с пилотами
01:49:58
[музыка]
01:50:00
хочется чтобы вы именно пощупали саму
01:50:04
систему как она работает unity ноты
01:50:06
смогли уже следующие свои менюшки
01:50:09
которые вы будете реализовывать горизонт
01:50:11
самостоятельно для этого нужна хорошо
01:50:14
понять как работают как работает самый
01:50:16
базовый rect transform
01:50:17
то вам нужно повторить все что мы
01:50:19
сделали вот и задача
01:50:22
со звездочкой это сделать меню с вызовом
01:50:25
из игры то есть в игре у вас будет
01:50:26
какое-то кнопка висеть и мы должны ее
01:50:29
щелкнуть и там должно быть такая такое
01:50:32
меню restart открытие настроек и выход
01:50:37
из игры вот такая вот задача с дудочкой
01:50:42
есть ли по нему какие-то вопросы вроде
01:50:47
бы достаточно просто все
01:51:16
все понятно ну и замечательно вот на
01:51:20
этом сегодня все про то что вы сегодня
01:51:23
были с нами видимо количество людей
01:51:28
сегодня не такой большой как обычно
01:51:29
потому что все после праздников но
01:51:32
травма классно давайте подтягиваться
01:51:34
будем изучать мету ей и делать классные
01:51:37
игры всем пока

Описание:

На этой странице вы можете по ссылке скачать медиафайл «Unity. Введение в UI» максимально возможного качества БЕЗ каких-либо ограничений на количество загрузок и скорость скачивания.

Готовим варианты загрузки

popular icon
Популярные
hd icon
HD видео
audio icon
Только звук
total icon
Все форматы
* — Если видео проигрывается в новой вкладке, перейдите в неё, а затем кликните по видео правой кнопкой мыши и выберите пункт "Сохранить видео как..."
** — Ссылка предназначенная для онлайн воспроизведения в специализированных плеерах

Вопросы о скачивании видео

mobile menu iconКак можно скачать видео "Unity. Введение в UI"?mobile menu icon

  • Сайт http://unidownloader.com/ — лучший способ скачать видео или отдельно аудиодорожку, если хочется обойтись без установки программ и расширений. Расширение UDL Helper — удобная кнопка, которая органично встраивается на сайты YouTube, Instagram и OK.ru для быстрого скачивания контента.

  • Программа UDL Client (для Windows) — самое мощное решение, поддерживающее более 900 сайтов, социальных сетей и видеохостингов, а также любое качество видео, которое доступно в источнике.

  • UDL Lite — представляет собой удобный доступ к сайту с мобильного устройства. С его помощью вы можете легко скачивать видео прямо на смартфон.

mobile menu iconКакой формат видео "Unity. Введение в UI" выбрать?mobile menu icon

  • Наилучшее качество имеют форматы FullHD (1080p), 2K (1440p), 4K (2160p) и 8K (4320p). Чем больше разрешение вашего экрана, тем выше должно быть качество видео. Однако следует учесть и другие факторы: скорость скачивания, количество свободного места, а также производительность устройства при воспроизведении.

mobile menu iconПочему компьютер зависает при загрузке видео "Unity. Введение в UI"?mobile menu icon

  • Полностью зависать браузер/компьютер не должен! Если это произошло, просьба сообщить об этом, указав ссылку на видео. Иногда видео нельзя скачать напрямую в подходящем формате, поэтому мы добавили возможность конвертации файла в нужный формат. В отдельных случаях этот процесс может активно использовать ресурсы компьютера.

mobile menu iconКак скачать видео "Unity. Введение в UI" на телефон?mobile menu icon

  • Вы можете скачать видео на свой смартфон с помощью сайта или pwa-приложения UDL Lite. Также есть возможность отправить ссылку на скачивание через QR-код с помощью расширения UDL Helper.

mobile menu iconКак скачать аудиодорожку (музыку) в MP3 "Unity. Введение в UI"?mobile menu icon

  • Самый удобный способ — воспользоваться программой UDL Client, которая поддерживает конвертацию видео в формат MP3. В некоторых случаях MP3 можно скачать и через расширение UDL Helper.

mobile menu iconКак сохранить кадр из видео "Unity. Введение в UI"?mobile menu icon

  • Эта функция доступна в расширении UDL Helper. Убедитесь, что в настройках отмечен пункт «Отображать кнопку сохранения скриншота из видео». В правом нижнем углу плеера левее иконки «Настройки» должна появиться иконка камеры, по нажатию на которую текущий кадр из видео будет сохранён на ваш компьютер в формате JPEG.

mobile menu iconСколько это всё стоит?mobile menu icon

  • Нисколько. Наши сервисы абсолютно бесплатны для всех пользователей. Здесь нет PRO подписок, нет ограничений на количество или максимальную длину скачиваемого видео.