Основы разработки в Unity
Презентации для изучения
Ниже приведены основные презентации, разработанные мною для того чтобы вы максимально комфортно и быстро погрузились в разработку игр на Unity. Презентации начинаются с простого написания HelloWorld и заканчиваются информацией об основных подходах к разработке и публикации своей первой игры на Unity.
Курс по основам Windows Forms и C#
Геймдизайн. Подходы к разработке игр
- L01 — Основы игрового дизайна;
- L02 — Думай как дизайнер;
- L03 — Прототипирование на бумаге;
- L04 — Презентация игры;
- L05 — Адаптивный дизайн;
Основы разработки в Unity
- L01 Unity&C# — Вводная;
- L02 Unity&Bolt — Визуальное программирование;
- L03 Unity&Bolt — Погружение. В примерах и задачах;
- L04 Unity&Bolt — Анимация персонажей;
- L05 Unity — Создание локаций;
- L06 Unity — Git, Фичи, Профит и Порядок;
- L07 Unity — Этапы разработки приложения;
Примерный план изучения
- Statistics — таблица со статистикой выполнения заданий;
- Unity.com — среда разработки | Справа сверху линк на регистрацию Unity ID;
1 Неделя
- Краткий гайд по первому запуску Unity из аудитории РТФ УрФУ;
Цель первой недели — дать студентам представление о разработке в Unity.
На первой неделе мы рассмотрели:
- Методику МДЭ: механика, динамика, эстетика;
- Три пункта, благодаря которым игра будет интересна: возможность выбора, и т.д.;
- Написали первую программу «Hello World» на С# в Unity;
- Узнали, как подключить скрипт к игровому объекту GameObject;
- Узнали о расширении Bolt и визуальном программировании;
- Workshop: Проанализировали игру согласно методики МДЭ;
2 Неделя
Цель недели — разобрать принцип работы типового игрового прототипа ApplePicker, выяснить из каких ключевых объектов он состоит, а также перейти к созданию сцены и основных игровых объектов в Unity.
- Workshop — [п.1 — п.3] практикум по прототипированию игры Apple Picker;
- Guide — разбор работы игрового прототипа Apple Picker;
3 Неделя
Цель недели — перейти к написанию программного кода для прототипирования игры, и используя методику Brainstorm расширить и/или модифицировать функционал игры.
- Workshop — [п.4] Программирование игровых объектов;
- Guide — Brainstorm. Расширение функционала игрового прототипа;
Практическая работа 1 — Движение NPC к цели
- Ознакомиться с видео-гайдом (реализацией) — ссылка;
- Повторить реализацию, добавив управление кубиком стрелками (или WSAD). Реализовать движение кубика можно с помощью Unity Bolt (см. пример);
- Отчет в формате pdf, содержащий название, скрины сцены и код (~2-3 стр.) и прикреплять к практической работе в aup.uisi.ru
- Ссылка для выгрузки работ на aup;
Практическая работа 2 — Создание локации
- Ознакомиться с видео-гайдом (реализацией) — ссылка;
- По примеру в видео-гайде создать локацию, состоящую из 6-ти базовых дорожных элементов (это ее размер)
- В локации предусмотреть точку входа и выхода для стыковки с другими проектами;
- Сохранить проект как package (см. коммент в видео);
- Прикрепить ссылку на gdrive на расшаренный package. Чтобы потом можно было состыковать проекты в одну большую карту;
- Отчет в формате pdf, содержащий название, скрины сцены и код (~2-3 стр.) и прикреплять к практической работе в aup.uisi.ru
- Ссылка для выгрузки работ на aup;
Практическая работа 3 — Спаун Мобов на карте
- Скачайте архив, прикрепленный ниже. Он содержим три скрипт-файла, которые разными способами генерируют объекты на сцене в Unity:
- spawnEnemyRandomPoint.cs,
- spawnEnemyRandomPointTime.cs,
- spawnEnemyСonstantPoint.cs
- Скрипт-файл желательно подключить к MainCamera, а в переменные скрипта-файла в окне Inspector поместить префабы с NPC, которые будут спауниться в выбранных точках.
- Создайте новую сцену, или модифицируйте имеющуюся (см. задания 1 и 2), на которой происходит спаун NPC с использованием одного из .cs-файлов.
- В отчете отразите:
- скриншот созданной сцены,
- блок-схему подключения .cs-файла к проекту Unity и его взаимодействие с объектами на сцене,
- оформленный программный код для каждого из предложенных .cs-файлов,
- описание работы каждого из предложенных .cs-файлов. Произвольно по 2-3 предложения на каждый файл.
- Ссылка для выгрузки работ на aup;
Практическая работа 4 — Баланс в игре
- Ознакомьтесь с презентацией, которая обсуждалась на лекции: google-pres
- На лекции мы создали пример таблицы для балансировки: google-sheets
- У вас два варианта выполнения этого задания:
- Задание на 4. Отбалансировать оружие, которое мы добавили на лекции. Цель балансировки при этом, — сделать так чтобы оружие было примерно одинаковое по эффективности, но имело разный урон для разного расстояния.
- Задание на 5. Придумать свою систему переменных в игре и отбалансировать ее. Например, это может быть вероятность выпадения разных предметов, либо скорость движения врагов/игроков в разных условиях и т.д.
- К ответу на aup.uisi.ru нужно прикрепить отчет и ссылку на таблицу в Google-doc.