Unity Game Developer: курс по разработке игр на Unity от Otus
Вы научитесь
Программа курса
Вас ждёт онлайн-курс по разработке игр на Unity, состоящий из теоретической части, где вы освоите принципы ООП и программирования на C#, а также практики в формате разработки трёх инди-игр в различных жанрах.
Введение в Unity. Основы программирования и компьютерной графики
Установите редактор Unity и познакомитесь с компонентами экосистемы, освоите пайплайн работы с ассетами и настроите игровую сцену. Узнаете, как создавать 2D- и 3D-объекты, работать с текстурами и материалами, выполнять рендеринг и подбирать шейдеры. Поймёте, зачем использовать инструмент Git при разработке Unity-проекта, разберёте команды и принципы версионирования. Научитесь работать с файлами, переменными и разными типами данных в C#; создадите файл и запишете в него константы, после чего присвоите всем операциям кнопки. Познакомитесь с понятием сериализации, освоите применение операторов и циклов, а также научитесь обрабатывать исключения. Освежите математические знания, необходимые для Unity-разработки: векторы, матрицы, интерполяцию и преобразования. Рассмотрите базовые принципы объектно-ориентированного программирования, в том числе структуру класса и критерии наследования. Изучите особенности полиморфизма, а также освоите навык работы с коллекциями классов и присваивания им отдельных свойств. Реализуете алгоритм поиска и сортировки, кроме того, разберёте практические примеры их применения в играх.
Установите редактор Unity и познакомитесь с компонентами экосистемы, освоите пайплайн работы с ассетами и настроите игровую сцену.
Узнаете, как создавать 2D- и 3D-объекты, работать с текстурами и материалами, выполнять рендеринг и подбирать шейдеры.
Поймёте, зачем использовать инструмент Git при разработке Unity-проекта, разберёте команды и принципы версионирования.
Научитесь работать с файлами, переменными и разными типами данных в C#; создадите файл и запишете в него константы, после чего присвоите всем операциям кнопки.
Познакомитесь с понятием сериализации, освоите применение операторов и циклов, а также научитесь обрабатывать исключения.
Освежите математические знания, необходимые для Unity-разработки: векторы, матрицы, интерполяцию и преобразования.
Рассмотрите базовые принципы объектно-ориентированного программирования, в том числе структуру класса и критерии наследования.
Изучите особенности полиморфизма, а также освоите навык работы с коллекциями классов и присваивания им отдельных свойств.
Реализуете алгоритм поиска и сортировки, кроме того, разберёте практические примеры их применения в играх.
Разработка пошаговой 3D-игры
Создадите и настроите 3D-уровень, загрузите готовые ассеты и создадите префабы и анимацию определённых действий персонажей в игре. Реализуете гейм-механику с помощью скриптов и корутин, в частности, для действий с оружием и перемещения объекта. Придумаете, какое оружие будет использоваться в игре, определите условия победы и поражения, а также проработаете детализацию персонажей. Создадите пользовательский интерфейс: спроектируете несколько уровней-сцен, реализуете отображение индикатора загрузки и уровня здоровья героя. Научитесь работать с компонентом ParticleSystem и библиотекой готовых ассетов эффектов, а также настроите камеру. Добавите звуковое сопровождение игровых действий с помощью интеграции компонентов AudioSource и AudioListener.
Создадите и настроите 3D-уровень, загрузите готовые ассеты и создадите префабы и анимацию определённых действий персонажей в игре.
Реализуете гейм-механику с помощью скриптов и корутин, в частности, для действий с оружием и перемещения объекта.
Придумаете, какое оружие будет использоваться в игре, определите условия победы и поражения, а также проработаете детализацию персонажей.
Создадите пользовательский интерфейс: спроектируете несколько уровней-сцен, реализуете отображение индикатора загрузки и уровня здоровья героя.
Научитесь работать с компонентом ParticleSystem и библиотекой готовых ассетов эффектов, а также настроите камеру.
Добавите звуковое сопровождение игровых действий с помощью интеграции компонентов AudioSource и AudioListener.
Разработка 2D-платформера
Узнаете, как создавать 2D-игры в Unity, настроите спрайты и анимацию, а также познакомитесь с компонентом Tilemap. Научитесь реализовывать физику в игровой сцене: спроектируете анимацию прыжков и других движений персонажа. Рассмотрите более сложные компоненты для реализации 2D-физики при взаимодействии объектов: joints и area effectors. Разберёте принципы сборки скелетной 2D-анимации, сможете применять Anima2D и импортировать элементы библиотеки DOTween. Изучите обработку ввода через класс Input и узнаете о её отличиях от пакетной системы, реализуете управление 2D-персонажем. Добавите возможность сохранения прогресса и его загрузки при перезапуске игры, а также освоите использование PlayerPrefs, JsonUtilty и BinarySerializer.
Узнаете, как создавать 2D-игры в Unity, настроите спрайты и анимацию, а также познакомитесь с компонентом Tilemap.
Научитесь реализовывать физику в игровой сцене: спроектируете анимацию прыжков и других движений персонажа.
Рассмотрите более сложные компоненты для реализации 2D-физики при взаимодействии объектов: joints и area effectors.
Разберёте принципы сборки скелетной 2D-анимации, сможете применять Anima2D и импортировать элементы библиотеки DOTween.
Изучите обработку ввода через класс Input и узнаете о её отличиях от пакетной системы, реализуете управление 2D-персонажем.
Добавите возможность сохранения прогресса и его загрузки при перезапуске игры, а также освоите использование PlayerPrefs, JsonUtilty и BinarySerializer.
Разработка 3D-шутера
Создадите уровень многопользовательского сетевого 3D-шутера с помощью инструмента Terrain и плагина ProBuilder. Добавите генератор уровня и познакомитесь с принципами структурирования архитектуры игрового проекта на Unity. Спроектируете контроллер для управления действиями персонажа, а также освоите навык работы с анимационными слоями. Добавите статичные препятствия и реализуете врагов в формате динамических объектов с помощью компонента NavMesh. Смоделируете несколько разных видов оружия и проработаете игровую логику и правила, в том числе условия победы. Настроите камеру с помощью Cinemachine и добавите в сцену дополнительных 3D-персонажей, не влияющих на ход игры. Узнаете о возможностях Unity для работы со шрифтами, а также рассмотрите локализационные плагины и пакеты.
Создадите уровень многопользовательского сетевого 3D-шутера с помощью инструмента Terrain и плагина ProBuilder.
Добавите генератор уровня и познакомитесь с принципами структурирования архитектуры игрового проекта на Unity.
Спроектируете контроллер для управления действиями персонажа, а также освоите навык работы с анимационными слоями.
Добавите статичные препятствия и реализуете врагов в формате динамических объектов с помощью компонента NavMesh.
Смоделируете несколько разных видов оружия и проработаете игровую логику и правила, в том числе условия победы.
Настроите камеру с помощью Cinemachine и добавите в сцену дополнительных 3D-персонажей, не влияющих на ход игры.
Узнаете о возможностях Unity для работы со шрифтами, а также рассмотрите локализационные плагины и пакеты.
Проектная работа
Подберёте тему итогового проекта и ознакомитесь с регламентом подготовки, требованиями и спецификой презентации. Получите рекомендации от преподавателей и разберёте вопросы, возникающие в процессе разработки игровых приложений. Подемонстрируете готовые игры комиссии, после чего сможете получить диплом об окончании курса и подготовить портфолио.
Подберёте тему итогового проекта и ознакомитесь с регламентом подготовки, требованиями и спецификой презентации.
Получите рекомендации от преподавателей и разберёте вопросы, возникающие в процессе разработки игровых приложений.
Подемонстрируете готовые игры комиссии, после чего сможете получить диплом об окончании курса и подготовить портфолио.