Программа курса «Основы разработки игровых приложений на платформе UNITY»

Общий объём курса: 60 академических часов (40 теории + 20 практики).

Дополнительно предполагается 20 часов самостоятельной работы.

Рекомендуемое расписание:

10 недель в календарном исчислении, по 2 трёхчасовых занятия в неделю.

I.  Вводная часть.

1

Знакомство с EPAM. Общий план. Игровая индустрия: Развитие, появление движков, сравнение. Преимущества и недостатки Unity. Демонстрация Unity возможностей. Основные ресурсы для изучения.

Задачи на дом: Установить обеспечение на компьютеры.

2 часа

2

Общая структура игр. Игровой контент. Подходы к разработке игр, рабочий процесс.

2 часа

3

Построение игровых движков. Шаблоны “Игровой цикл”,  “Update”, “Компонент.  КОП программирование.

2 часа

4

Обзор основных инструментов Unity. Навигация, размещение объектов. Объекты(Примитивы), деревья объектов, Свет,  Камера, Материал.  

Задачи на дом: Создать сцену, скинуть скриншоты.

2 часа

II. Скриптинг. Unity на примере создания RPG.

5

C#. Описание синтаксиса.(Тем кому нужно)

2 часа

6

Устройство MonoBehaviour. GameObject. Transform. Векторы и их операции. Кватернионы и углы Эйлера.

Простая программа перемещения и поворота объекта. Debug. Log

Задачи на дом: Сделать двигающийся “вперед” объект по циклической траектории.

2 часа

7

Пользовательский Input. Персонаж с управлением. Переменные в инспекторе. Time. deltaTime. Персонаж с ускорением. Настройка камеры(ребенком персонажа)

Задачи на дом: Повторить результат дома.

2 часа

8

Физика в Unity. Update для физики. Порядок методов в Игровом цикле unity. Заставляем персонажа прыгать.

Коллизии. Получение полей GameObject.

Задачи на дом:

Повторить результат.

Есть три кубика с размером. Прикосновение к ним меняет размер плеера

2 часа

9

Взаимодействие с объектами. Взаимодействие с материалами. Destroy объекта. Пустой трансформ - контроллер на сцене, на примере счетчика.  Настройка камеры(скрипт движения за персонажем). Отделение Control от Model. (Player Input)

Задачи на дом:

Повторить результат.

Есть три кубика. Прикосновение с ними уменьшает здоровье игрока.

2 часа

10

Анимации персонажа. Конечные автоматы. События в конце анимации. Состояния персонажа. Создание собственных простых анимаций.

Задачи на дом.

Повторить результат.

Добавить “врагам” анимации перемещения.

2 часа

11

Instantiate. Префабы. Создаем шарик - пулю. Логика пули. Создаем область спауна монстров идущих на нас.  

Задачи на дом.

Повторить результат.

Сделать контролер над точками спауна.

2 часа

12

Создание простого AI. Coroutine. Патерн Стратегия. Задача на нахождение право-лево.
Краткое знакомство с Terrain.

Задачи на дом.

Повторить результат

Добавить еще одну стратегию для врага.

2 часа

13

Знакомство с Unity UI.  Поле жизней. Здоровье врагов. Экран смерти и победы. Перезагрузка уровня.  

Задачи на дом.
Повторить результаты. Закончить проект.

2 часа

III.  Углубленное проектирование. Tower Defense

14

Построение архитектуры, правила декомпозиции. Создание контроллеров. Компонент для контроля игры, для UI, для звука и т. д. Объект настроек. Создание башни в определенном месте.

Задачи на дом.
 Повторить результаты

2 часа

15

Взаимодействие между модулями: Event System, Service Locator, Dependency injection. Добавление системы ивентов.  Создание башни.  RayCast.

Задачи на дом.
Повторить результаты.

Строить различные башни в зависимости от области

2 часа

16

Башня. Шаблон состояние. Стрельба башни. Полет снаряда. Объект Enemy. Снаряды: точечные и AOE. Попадание не через коллизию.

Задачи на дом.
 Повторить результаты.

Создать баллистический снаряд.

2 часа

17

Спаун точка, гизмосы. Движение монстров. Простой путь. Алгоритм заяц - лисица. Уничтожение монстров достигнувших цель.  Кратко про генерацию навмеша.

Задачи на дом.
 Повторить результаты.

Организовать путь с ветвлением.

2 часа

18

Эффекты взрыва. Партиклы и как с ними работать.  Эффекты при попадании. Типы башен и эффектов. (леденение)

Задачи на дом.
  Повторить результаты.

Организовать эффект яда(или на выбор)

2 часа

19

Простой UI. Жизни игрока. Волны. Общий прогресс уровня. Деньги на строительство. Время строительства башен. Scroll Bar создания.

UI поражения. UI победы.

Задачи на дом.
 Повторить результаты.

2 часа

20

Работа между сценами. UI уровней. Сохранение прогресса прохождения.  

Задачи на дом.
 Закончить проект.

2 часа

 

К слушателям предъявляются следующие требования:

·  Обязательно – базовый уровень C#.

o  Синтаксис.

o  Основные типы данных (ссылочные и значимые, свойства, события, делегаты).

o  Ключевые механизмы (Garbage Collector).

o  Коллекции и IEnumerator.

·  Обязательно – базовый уровень английского (A2)

·  Будет плюсом самостоятельное знакомство с Unity (на уровне самостоятельной работы с editor и реализации roll-a-ball).

·  Страсть к изучению нового в программировании и созданию игрового experience.

·  хорошая обучаемость, самообучаемость