- •1. Преимущества, недостатки Unity. Примеры игр на основе Unity
- •Описание интерфейса главного окна Unity. Вкладка Scene, вкладка Game и панель инструментов.
- •Работа с мышью и клавиатурой. Навигация. Преобразование объектов. Вкладка Hierarchy, Project, Console и панель Inspector
- •4. Поддержка языков программирования в Unity. Сценарии. Компоненты. Методы Start() и Update(). Вывод информации в консоль.
- •5. Планирование трехмерного проекта fps. Трехмерное координатное пространство. Правая и левая системы координат.
- •6. Размещение объектов на трехмерной сцене. Понятие GameObject. Масштабирование объектов.
- •7. Источники света и камеры. Типы осветителей. Коллайдер, типы коллайдеров и точка наблюдения игрока в проекте fps.
- •3.3.3. Слежение за состоянием персонажа
- •14. Увеличение количества врагов: шаблон экземпляров, создание шаблона врага, сценарий SceneController, порождающий экземпляры врагов.
- •3.4.1. Что такое шаблон экземпляров?
- •3.4.2. Создание шаблона врага
- •3.5.1. Шаблон снаряда
- •3.5.2. Стрельба и столкновение с целью
- •3.5.3. Повреждение игрока
- •16. Типы игровых ресурсов. Создание геометрической модели сцены. Назначение геометрической модели. Наложение текстур. Выбор формата файла
- •4.1. Основные сведения о графических ресурсах
- •4.2. Создание геометрической модели сцены
- •4.2.1. Назначение геометрической модели
- •4.3. Наложение текстур
- •4.3.1. Выбор формата файла
- •17. Импорт файла изображения. Назначение текстуры. Создание неба с помощью текстур. Скайбокс. Создание нового материала для скайбокса
- •4.3.2. Импорт файла изображения
- •4.3.3. Назначение текстуры
- •4.4. Создание неба с помощью текстур
- •4.4.1. Что такое скайбокс?
- •4.4.2. Создание нового материала для скайбокса
- •18. Выбор формата файла для экспорта трехмерных моделей. Экспорт и импорт модели.
- •19. Системы частиц. Редактирование параметров эффекта. Новая текстура для пламени. Присоединение эффектов частиц к трехмерным объектам.
- •20. Подготовка проекта Memory. Понятие спрайт. Анимированные спрайты. Переключение камеры в режим 2d. Интерактивные объекты. Создание объекта из спрайтов.
- •21. Проект Memory: открытие карты по щелчку. Сценарий. Программная загрузка изображений. Выбор изображения в невидимом компоненте SceneController. Сценарий, реализующий эти методы.
- •28. Игра в стиле jetpack joyride в Unity 2d. Передвижение мыши вперед (скрипт). Создание бесконечного уровня в Unity: создание префаба, генератор комнат (скрипт).
- •29. Игра в стиле jetpack joyride в Unity 2d. Анимация персонажа: покадровая анимация, создание анимационных переходов, добавление параметров перехода.
- •31. Игра в стиле jetpack joyride в Unity 2d. Добавление лазеров в игру. Скрипт для включения, выключения, переключения и вращения лазеров. Настройка параметров этого скрипта.
- •32. Игра в стиле jetpack joyride в Unity 2d. Реализация скрипта, описывающего смерть мыши. Добавление анимаций Fall и Die, переходы между ними, триггер при смерти мыши.
- •33. Игра в стиле jetpack joyride в Unity 2d. Добавление монет. Использование тегов для различия в игре монет и лазеров. Обновленный скрипт контроллера персонажа.
- •Добавление метода для добавления нового объекта
- •Генерация и удаление объектов
- •Настройка параметров скрипта
- •35. Игра в стиле jetpack joyride в Unity 2d. Скрипт для добавления счётчика монет на экране. Скрипт для отображения кнопки на экране и возможности перезапуска игры.
- •Звук для лазера
- •Звук сбора монет
- •Звуки шагов и реактивного ранца
- •Добавление Audio Sources
- •Переключение между звуком шагов и реактивного ранца
- •Задание переменных сценария «Шаг» и «полет»
Описание интерфейса главного окна Unity. Вкладка Scene, вкладка Game и панель инструментов.
Интерфейс Unity состоит из следующих частей:
вкладка Scene,
вкладка Game,
панель инструментов,
вкладка Hierarchy,
панель Inspector,
вкладки Project
и Console.
Каждая часть имеет собственное предназначение, но все они играют важную роль в цикле создания игры:
Просмотр файлов выполняется на вкладке Project.
Объекты трехмерной сцены просматриваются на вкладке Scene.
Панель инструментов предоставляет элементы управления сценой.
На вкладке Hierarchy путем перетаскивания можно менять связь между объектами.
Панель Inspector отображает сведения о выделенных объектах и показывает свя занный с ними код.
Тестирование результатов осуществляется на вкладке Game, а сообщения об ошибках появляются на вкладке Console
Наиболее заметная часть интерфейса — расположенная в центре вкладка Scene. Именно здесь мы можем видеть, как выглядит мир игры, и перемещать объекты по сцене. Сеточные объекты в сцены, как им и положено, представлены в виде сеток. Можно наблюдать и ряд других объектов, представленных различными значками и цветными линиями. Это камеры, источники света, источники звука, области столкновений и т. п. Разумеется, эта картинка отличается от того, что будет показываться в процессе игры, — рассматривать сцену можно, не ограниваясь игровым представлением.
Игровое представление отображается на вкладке Game, расположенной рядом с вклад кой Scene (переход с вкладки на вкладку осуществляется в верхнем левом углу области отображения). Интерфейс содержит и другие элементы, сконструированные подобным образом; для изменения отображаемого ими содержимого достаточно перейти на другую вкладку. После запуска игры начинает отображаться игровое представление. При этом переходить на вкладку Game не нужно, переключение выполняется автоматически.
Для запуска игры достаточно нажать кнопку Play над вкладкой Scene. Вся верхняя часть интерфейса занята так называемой панелью инструментов (Toolbar), и кнопка Play находится как раз в центре этой панели. На рис. 1.10 из всего интерфейса редактора для наглядности оставлена только панель инструментов с расположенными под ней вкладками Scene/Game.
Работа с мышью и клавиатурой. Навигация. Преобразование объектов. Вкладка Hierarchy, Project, Console и панель Inspector
Навигация в сценах осуществляется с помощью мыши и набора клавиш-модификаторов, влияющих на результат манипуляций с мышью. Главные операции — это перемещение (move), облет (orbit) и масштабирование (zoom).
Преобразование объектов также осуществляется посредством трех вышеупомянутых операций. Более того, каждому типу навигации соответствует собственное преобразование:
перенос (translate),
поворот (rotate)
и изменение размеров (scale).
Выделенный объект сцены можно двигать (или, если брать более точный термин, переносить), вращать и указывать его размер. Если рассмотреть процесс навигации в сцене с этой точки зрения,
перемещение будет соответствовать переносу камеры,
облет — повороту камеры,
а масштабирование — изменению размеров камеры.
Переход между этими операциями осуществляется не только кнопками панели инструментов, но и нажатием клавиш W, E и R. При входе в режим преобразования у выделенного объекта появляются цветные стрелки или окружности. Это габаритный контейнер преобразования (transform gizmo), перетаскивание которого меняет вид объекта.
Рядом с кнопками преобразований находится кнопка инструмента Rect, позволяющая перейти к работе с двумерной графикой и объединяющая в себе операции переноса, поворота и масштабирования. В трехмерном пространстве за каждую из этих операций отвечает свой инструмент, но в двумерном пространстве они объединены, так как у нас становится меньше на одно измерение. В Unity существует также набор клавиатурных комбинаций для ускорения выполнения различных операций.
На левой стороне экрана примостилась вкладка Hierarchy, в то время как правую заняла панель Inspector (рис. 1.12). Вкладка Hierarchy содержит список всех объектов сцены в виде древовидной структуры, ветки которой вложены друг в друга в соответствии с иерархическими связями между этими объектами. По сути, эта вкладка позволяет выделять объекты по именам, избавляя от необходимости искать в сцене нужный объект, чтобы выделить его щелчком. Иерархические связи объединяют объекты в группы. Визуально это оформлено в виде папок и дает возможность за одну операцию переместить целую группу объектов.
На панели Inspector отображаются данные выделенного объекта. Выделите любой объект и обратите внимание, как изменится вид панели Inspector. Отображаемая информация по большей части представляет собой список компонентов, причем вы можете как добавлять к объектам новые компоненты, так и удалять существующие. Все игровые объекты содержат по крайней мере один компонент — Transform, поэтому на панели Inspector всегда будут отображаться хотя бы сведения о положении и ориентации выделенного объекта. У многих объектов вы увидите целые списки компонентов, в том числе связанные с этими объектами сценарии.
Нижнюю часть экрана занимают показанные на рис. 1.13 вкладки Project и Console. В данном случае мы видим пример такой же организации элементов интерфейса, как и у вкладок Scene и View, что легко позволяет переходить от одного представления к другому. На вкладке Project отображаются все ресурсы проекта (графические фрагменты, код и т. п.). В левой части этой вкладки находится список папок проекта; при выделении папки справа появляются находящиеся в ней файлы. По сути, это такой же список, как и на вкладке Hierarchy, но если эта вкладка показывает перечень объектов сцены, то на вкладке Project представлены файлы, не включенные ни в одну конкретную сцену (в том числе и сами файлы сцен — сохраненная сцена появляется на вкладке Project!).
Вкладка Console представляет собой место вывода связанных с кодом сообщений. Иногда это намеренно вставленные в программу сообщения отладчика, иногда Unity посылает сообщения об ошибке, обнаружив неполадку в написанном сценарии.