Введение в интерфейс Unity. #8

Unity    2018-02-08 21:06:56     тег: Курс по Unity

В этом уроке мы познакомимся с интерфейсом среды разработки Unity. Стандартный интерфейс Unity состоит из 6 функциональных вкладок. Чтобы убедиться, что мы работаем с одинаковым интерфейсом, давайте в верхнем правом углу выберем стиль его отображения, пусть это будет шаблон Default. Теперь, когда у нас выбран одинаковый интерфейс, давайте обратим внимание на панель меню. Меню содержит различный функционал позволяющих открывать и сохранять файлы, менять настройки, создавать игровые объекты, создавать компоненты, или добавлять компоненты к игровым объектам находящимся в рабочем проекте. Кроме всего прочего вы можете открывать и другие окна, которые отсутствуют в стандартном интерфейсе.

Ниже меню находится панель инструментов, содержащая инструментарий предназначенных для выполнения различных действий. Например, слева вы можете видеть группу инструментов предназначенных для трансформации объекта.
Первая кнопка из этой группы представляет собой инструмент Hand tool, он позволяет перемещаться по окну сцены.

Следующие инструменты это Move tool, Rotate tool и Scale tool.Они предназначены для манипулирования объектами на сцене, и позволяют менять позицию, вращать, или менять размер объекта. Также существует еще инструмент, который называется Rect Transform tool.Он в основном предназначен для работы с 2D объектами, хотя его можно использовать также и для 3D объектов.

Rect Transform tool позволяет передвигать, вращать, а также масштабировать объект, в зависимости от выбранного инструмента на выделенном объекте.Для визуального представления отладочных инструментов в том числе и инструмента Rect Transform Tool используется так называемое гизмо. Для инструмента Rect Transform гизмо представляет собой рамку с шариками по углам.

В целом же гизмо это визуальное представление какого либо инструмента необходимое для отладки игры. Например, если мы выберем инструмент Move, на выделенном объекте появится гизмо инструмента Move, в виде разноцветных стрелок. По умолчанию гизмо инструмента Move находится в центре выбранного объекта.

Теперь перейдем к следующему инструменту который отображает опорную точку объекта. В одном из прошлых уроков Импорт 3D объектов в Unity, я рассказывал о том, что точку опоры - то есть пивот, можно разместить в любой части объекта. Так вот, чтобы отобразить его оригинальное размещение, инструмент изменения пивота должен быть переключен в режим Pivot. Чтобы вернуть пивот в центр объекта, необходимо переключить инструмент Toggle tool handle position в режим Center.

В Unity существует две системы координат - глобальная и локальная. В связи с этим вы можете управлять объектом используя первую или вторую систему,  смотря  какой результат вам нужно получить. В данный момент используется локальное направление для управления объектом. Чтобы перемещать объект по осям глобальных координат, нужно переключить инструмент Toggle Rotation Handles в режим Global.

На данный момент не видно разницы, так как объект находится в направлении глобальных координат, и к нему не было применено каких-либо трансформаций. Чтобы увидеть разницу, возьмем инструмент вращения, и немного повернем объект. Выберем снова инструмент Move и переключимся на локальную систему координат. Теперь видно, что стрелки инструмента Move повернуты в сторону локальных координат.

Нажмем Ctrl+Z, чтобы вернуть объект в начальное положение. Следующие инструменты запускают и останавливают игру. Во время разработки игру, мы можем ее запустить тут же в Unity нажав на кнопку воспроизведения, при этом редактор переключит нас на вкладку Game, и вы сможете начать играть. При этом за все, что видно на вкладке Game отвечает объект Main Camera  находящийся на вкладке Hierarchy. Объекты Main Camera и Directional Light создаются автоматически при создании нового проекта. Directional Light это глобальное освещение, похожее на Солнце.

Чтобы выключить игру нужно нажать кнопку воспроизведения еще раз. Также мы можем ставить игру на паузу, используя кнопку паузы. Давайте еще раз запустим игру и поставим ее на паузу, при этом у нас появится возможность сделать изменение некоторых полей в редакторе. Допустим, мы внесли изменения, и хотим перейти на пару кадров вперед, чтобы посмотреть результат. Для этого существует третья кнопка, которая показывает игру покадрово. Для выхода из режима паузы, просто нажмите еще раз ее.

И снова нажмем кнопку плей для выхода из игры. Следующий набор инструментов, которые мы рассмотрим, это инструменты облачного хранилища. Инструменты облачного хранилища позволяет взаимодействовать с другими членами команды, используя специальные возможности совместной работы. При нажатии на значок облака откроется вкладка Services, которая открывает доступ к онлайн сервисам Unity. Также вы можете войти в свою учетную запись, используя кнопку Account.

Осталось рассмотреть инструменты Layers и Layout. Так как мы уже ранее познакомились с инструментом Layout, давайте рассмотрим инструмент Layers. Инструмент Layers позволяет создавать новые слои и управлять существующими. Он очень полезен для организации всего проекта, так как позволяет настроить отображение определенных объектов на слоях.

Например при разработке игры, на определенном слое можно отключить визуализацию воды, тем самым повысив производительность компьютера. Или когда необходимо скрыть определенные объекты от случайного нажатия. В настоящее время существует много способов использования слоев, но об этом поговорим немного позже. Как вы уже обратили внимание в Unity есть вкладка Hierarchy. Эта вкладка показывает все видимые объекты, которые находятся на сцене.

На этой вкладке вы можете создавать объекты, нажав кнопку Create, или из контекстного меню вызываемого кликом правой кнопки мыши. Давайте создадим 3D объект цилиндр.
Его можно можно перемещать, вращать и масштабировать. Объекты можно выбирать как на сцене, так и на вкладке Hierarchy. Для удаления объекта используется клавиша Delete. Если нам нужно найти какой-либо объект, мы можем это сделать на вкладке Hierarchy в строке поиска.

Допустим, на сцене тысяча ассетов, а нам нужно найти ассет Dwarf_Hero. Мы можем просто ввести в строку поиска значение Dwarf, и объекты на сцене станут серыми за исключением объектов содержащих эту подстроку в своем имени. Теперь давайте поговорим о сцене. Сцена, это то место, где вы будете проводить большую часть своего времени в Unity. На ней вы можете манипулировать объектами игры, создавать уровни, и отлаживать игровой процесс.

Теперь обратим внимание на вкладку Game. Эта вкладка показывает как будет выглядеть в конечном итоге наша игра. Как правило, вкладка Game отображает содержимое которое попало в зону видимости объекта Camera. Также в Unity есть вкладка Asset Store. На ней мы может покупать различные ассеты, или скачивать бесплатные, которые могут пригодится для вашего проекта. Но вернемся на сцену, и обратим внимание на вкладку Inspector. Данная вкладка показывает свойства выбранного объекта.


Любой объект на сцене имеет компонент Transform, который отвечает за его позицию, вращение и размер. Наш персонаж также имеет компонент Animator, при помощи которого мы можем его оживить. И для этого у нас есть анимационные клипы, которые мы можем объединить при помощи этого компонента. Сейчас мы не будем вдаваться в этот процесс, но обязательно рассмотрим его в этом учебном курсе.


Теперь рассмотрим вкладку Project. Ранее мы уже работали с этой вкладкой, создавая папки и импортировали ассеты. На этой вкладке есть кнопка Create, которая позволяет создавать различные ассеты. Так как и на вкладке Hierarchy, вы можете тут осуществлять поиск существующих ассетов. Кроме этого можно создать даже фильтр по типу ассета.
Например если мы ищем анимацию, нам нужно использовать фильтр AnimationClip. Чтобы отменить фильтр нажмите на него еще раз.

Также существует возможность поиска с помощью меток. Метки создаются на выбранных объектах, и применяются для маркировки например неба, колеса, врага и это в дальнейшем очень помогает при разработке игры. Рядом с вкладкой Project вы можете видеть вкладку Console. На этой вкладке будут появляться ошибки и предупреждения, которые могут возникнуть в процессе разработки игры.