1-й модуль
День первый
Знакомство с Roblox. Создание первой игры
- Создание учетных записей и установка Roblox;
- Знакомство с Roblox Studio. Понятие игрового движка;
- Создание своей первой игры на основе шаблона Obby.
Результат занятия: познакомились с понятием игрового движка, создали и сохранили свою первую игру.
Практическое задание: создание и настройка первых игровых объектов.
День второй
Родительско-дочерние отношения и Explorer. Группы объектов
- Родительско-дочерние отношения;
- Работа с группами объектов.
Результат занятия: научились применять родительско-дочерние отношения для работы с объектами, научились группировать игровые объекты.
Практическое задание: работа с блоками через настройку родительскодочерних отношений, построение винтовой лестницы с помощью группировки объектов.
День третий
Настройка свойств объектов и параметров игры
- Объекты Roblox и их свойства;
- Объект блок и его свойства;
- Свойства персонажей;
- Настройка освещения карты.
Результат занятия: научились настраивать свойства объектов и персонажей, настраивать освещение карты.
Практическое задание: настроили освещение в игре, настроили свойства объектов в своей игре.
День четвертый
Настройка эффектов в игре. Типы источников освещения
- Добавление в игру эффектов дыма и огня, изучение настроек этих эффектов;
- Изучение видов источников света в игре;
- Добавление новых скриптов и ассетов. Окно Toolbox.
Результат занятия: изучили, работу эффектов, добавили в игру эффекты дыма и огня и настроили их, добавили в игру источники освещения.
Практическое задание: добавление освещения разного цвета для создания разной атмосферы в разных частях уровня, практика работы с эффектами.
2-й модуль
День первый
Моделирование 3D объектов
- Принципы трехмерного моделирования объектов в Roblox Studio;
- Построение первого этажа здания;
- Построение второго этажа и крыши здания;
- Добавление декоративных элементов.
Результат занятия: изучили принципы построения 3D моделей, построили модель здания.
Практическое задание: построение 3D модели дома с использованием изученных инструментов.
День второй
Твердотельное моделирование
- Знакомство с твердотельным моделированием;
- Операции Union, Negate, Separate;
Результат занятия: Научились работать с твердотельным моделированием и создавать сложные геометрические детали.
Практическое задание: построили окна и дверные проходы в нашей модели,построили сложные объекты с помощью твердотельного моделирования (Стена, Ворота, Башня).
День третий
Работа с декалями и текстурами
- Использование декалей и текстур для работы с внешним видом объекта;
- Теория и практика работы с декалями;
- Теория и практика работы с текстурами.
Результат занятия: изучили работу с декалями и текстурами в теории, научились применять декали и текстуры на практике.
Практическое задание: изменили внешний вид объектов при помощи декалей и текстур (добавление таблички, облицовка стен).
День четвертый
Знакомство и практика работы с плагинами
- Знакомство с плагинами;
- Практика работы с плагинами Stravant ResizeAlign, Archimedes и Building Tools.
Результат занятия: изучили работу с плагинами в теории, научились применять плагины на практике.
Практическое задание: сборка дома из деталей (плагин Stravant ResizeAlign, изменение стены вокруг деревни (плагин Archimedes), строительство ограды вокруг поля (плагин Building Tools).
3-й модуль
День первый
Работа с ландшафтом
- Значение ландшафта в игре. Роль художника по окружению;
- Генерация нового ландшафта и настройка его параметров;
- Материалы ландшафта;
- Инструменты работы с ландшафтом.
Результат занятия: в теории и на практике изучили настройки и инструменты работы с ландшафтом.
Практическое задание: создание гор, пещер, троп, применение различных материалов для элементов ландшафта.
День второй
Проработка дизайна окружения
- Точки интереса;
- Добавление точек интереса в игру;
- Создаем и оформляем путь игрока.
Результат занятия: познакомились с понятием точки интереса, научились расставлять точки интереса и создавать естественный путь игрока.
Практическое задание: создали и настроили три точки интереса в игре, создали путь игрока от входа в игру до финальной локации.
День третий
Проработка деталей ландшафта и окружения
- Ландшафтный плагин BrushTool;
- Добавление растительности и ее настройки;
- Создание и оформление различных участков ландшафта.
Результат занятия: изучили теорию и практику добавления объектов растительности и создания реалистичного ландшафта.
Практическое задание: высаживаем растительные объекты (деревья, леса, трава), создаем и оформляем детали ландшафта (камни, скалистые участки местности).
День четвертый
Создание общего проекта
- Создание общего проекта для коллективной работы;
- Определение стилистики игры, сеттинга;
- Базовые приемы сторителлинга;
- Работа в группах – настройка ландшафта и объектов общего игрового проекта.
Результат занятия: познакомились с принципами групповой работы над общим игровым проектом.
Практическое задание: создание контекстуального сюжета игры, настройка общего игрового проекта с применением полученных на занятиях навыков.
4-й модуль
День первый
Язык программирования Lua. Начало работы со скриптами
- Базовые задачи программирования. Игровые движки;
- Язык программирования Lua. Переменные;
- Понятие скрипта. Создание и запуск скрипта;
- Практика применения скриптов в игровых заданиях.
Результат занятия: изучили работу с простыми скриптами.
Практическое задание: Решение практических задач - работа с готовыми скриптами – настраиваем параметры объектов для прохождения заданий игры.
День второй
Язык программирования Lua. Циклы for и while
- Знакомство с циклами и принципы работы с ними;
- Цикл While, понятие бесконечного цикла;
- Цикл For, конечные циклы;
- Анимирование базовых объектов при помощи скриптов;
- Практика применения циклов в игровых заданиях.
Результат занятия: изучили работу циклов и научились создавать с их помощью повторяющиеся действия.
Практическое задание: Решение практических задач – создание вращающихся дверей, перемещающихся платформ.
День третий
Язык программирования Lua. Условные конструкции, оператор If
- Принцип работы условных конструкций. Логический тип данных;
- Логические операторы and и or;
- Сравнение переменных, проверки условий;
- Работа с глобальными переменными.
Результат занятия: изучили работу логических конструкций, научились проверять истинность простых и сложных условий.
Практическое задание: Прохождение различных уровней, основанных на логических задачах и математических примерах.
День четвертый
Язык программирования Lua. Функции
- Понятие функции, преимущества их использования;
- Правила создания и вызова функций. Атрибуты функций и локальные переменные.
Результат занятия: научились создавать и вызывать функции, познакомились с параметрическим подходом.
Практическое задание: Применение полученных ранее знаний для прохождение практических заданий, требующих создания и применения функций.
5-й модуль
День первый
Язык программирования Lua. События, часть 1
- Основы работы с событиями. Событие Touched;
- Исправление ложных срабатываний. Функция Debounce;
- Создание подбираемых объектов;
- Встроенные функции Destroy, FindFirstChild.
Результат занятия: изучили принципы работы событий и познакомились с более сложными приемами программирования на Lua.
Практическое задание: прохождение практических заданий, создание интерактивных объектов.
День второй
Язык программирования Lua. События, часть 2
- Создание взрывающихся объектов;
- Создание телепорта;
- Работа с коллайдерами и событием OnTouchEnded;
- Основы работы с массивами.
Результат занятия: изучили работу с продвинутыми механиками применения событий, поработали над решением игровых задач.
Практическое задание: прохождение практических заданий, основанных на реальных игровых задачах и взаимодействии игрока с окружением.
День третий
Основы работы с интерфейсами
- Создание командного шутера на основе подготовленной заранее карты;
- Основные принципы UI/UX дизайна для игр;
- Создание меню выбора команды;
- Работа с шрифтами и адаптивной версткой.
Результат занятия: познакомились с созданием элементов интерфейса в Roblox Studio, изучили адаптивную верстку и ее применения в играх.
Практическое задание: создали меню выбора команды, настроили шрифты, изучили свойства элементов интерфейса.
День четвертый
Язык программирования Lua. Серверные и локальные скрипты
- Взаимодействие серверной и локальной стороны игр в Roblox;
- Создание локальных и серверных скриптов;
- Удаленные события;
- Сервис Teams и создание команд.
Результат занятия: изучили структуру взаимодействия компьютера и сервера, познакомились с удаленными событиями и локальными скриптами;
Практическое задание: программирование меню выбора команд, связь кнопок с сервисом Teams, реализация основных механик командного шутера.
6-й модуль
День первый
Основы анимации. Работа с гуманоидными персонажами
- Как работает анимация – основы;
- Версии персонажей (R6, R15 и т.д.);
- Настройка внешнего вида (одежда, аксессуары);
- Строение персонажа с точки зрения анимации (части тела, скелет4)
- Базовая анимация (Forward Kinematics) и ее принципы;
- Таймлайн и ключи анимации.
Результат занятия: изучили принципы создания, настройки и анимации базовых аватаров Roblox Studio.
Практическое задание: создание базового персонажа и работа со встроенными инструментами анимации Roblox Studio.
День второй
IK-анимация
- Обратная анимация (Inverse Kinematics), ее преимущества и недостатки;
- Персонаж R15. Создание сложных анимационных клипов (движений);
- Подключение анимации к персонажу при помощи скриптов;
- Циклические анимации.
Результат занятия: изучили работу со вторым основным подходом к анимированию персонажей, изучили способы скриптинга анимаций.
Практическое задание: создание сложных анимаций и настройка автоматического воспроизведения их персонажем.
День третий
Анимация и скриптинг
- Создание анимационных скриптов;
- Создание скрипта анимации для замены базовых движений;
- Система эмоций в Roblox;
- Система приоритетов анимаций;
- Вызов анимации при нажатии на клавишу.
Результат занятия: изучили базовые принципы риггинга персонажей.
Практическое задание: анимация танца, создание скрипта, отслеживающего нажатие клавиши, скрипта заменяющего базовые анимации.
День четвертый
Создание анимированных сцен
- Работа с плагином Moon Animator;
- Добавление персонажей на сцену и их анимация;
- Создание циклической анимации ходьбы;
- Анимация неодушевленных объектов.
Результат занятия: создали анимационную сцену с тремя персонажами.
Практическое задание: создали анимационную сцену с тремя персонажами и различными объектами.
7-й модуль
День первый
Кастомизация персонажей
- Создание неигрового персонажа;
- Базовая одежда и ее кастомизация;
- Кастомизация частей тела персонажа;
- Аксессуары и продвинутая одежда.
Результат занятия: научились разбираться в системе одежды в Roblox, научились изменять базовую одежду и использовать аксессуары.
Практическое задание: создание и кастомизация неигрового персонажа для своей игры.
День второй
Диалоговая система Roblox
- Объект Dialog и его настройка;
- Дерево диалогов. Ветки диалогов;
- Создание диалогов персонаже;.
- Добавление неигрового персонажа и диалоговой системы;
- Программирование вариантов диалога с помощью локальных скриптов.
Результат занятия: познакомились с системой диалогов в Roblox, научились настраивать диалоги и отслеживать действие игрока в диалогах.
Практическое задание: создание и настройка диалогов в своей игре.
День третий
Создание квеста. Часть 1
- Подготовка диалога для квеста;
- Создание квестовых переменных;
- Добавление в квест объектов;
- Редактирование квестовых диалогов через скрипты.
Результат занятия: изучили основные приемы создания игровых квестов, научились создавать и добавлять элементы диалога через скрипты, подготовили базовую часть квеста.
Практическое задание: добавить квестовые предметы, настроить диалог с NPC по результатам квеста.
День четвертый
Создание квеста. Часть 2
- Подготовка аксессуара для награды квеста;
- Создание спецэффектов для аксессуара;
- Создание скриптов для завершения квеста.
Результат занятия: завершили создание квеста и настроили выдачу награды по результатам квеста.
Практическое задание: добавление и настройка аксессуара, написание скриптов для завершения квеста.
8-й модуль
День первый
Основы левел-дизайна. Часть 1. Открытые локации
- Знакомство с левел-дизайном. Принципы построения уровней. Блокаут;
- Ключевые локации: укрытия, арены, точки обороны, фланги;
- Перепады высот;
- Баланс сложности локаций.
Результат занятия: изучили базовые понятия левел-дизайна принципы построения уровней, разобрали различные виды основных локаций, спланировали основную часть уровня.
Практическое задание: создание игрового уровня из примитивов (блокаут), построение игрового маршрута, распределение противников на уровне.
День второй
Левел-дизайн. Часть 2. Здания и окружение
- Модульный подход к моделированию. Планирование уровня;
- Создание модульного здания с учетом перемещений игроков;
- Проработка окружения.
Результат занятия: научились собирать сложные объекты, используя модульные конструкции, завершили основную часть уровня.
Практическое задание: создание собственной модели здания.
День третий
Денежная система Roblox. Часть 1. Внутриигровая валюта
- Принципы работы с внутриигровой валютой;
- Скрипт для вывода денег игрока в интерфейс;
- Создание противника при помощи Toolbox;
- Система тегов и отслеживание выстрелов игроков;
- Выдача вознаграждения.
Результат занятия: создание системы внутриигровой валюты, научились выводить переменные игрока в интерфейс и изменять их.
Практическое задание: добавить интерфейс для отображения денег игрока, настроить выдачу вознаграждения за победу.
День четвертый
Денежная система Roblox. Часть 1. Создание магазина
- Программирование управления интерфейсом магазина. Создание кнопок;
- Покупка усилителя прыжка;
- Скрипт покупки игрового оружия.
Результат занятия: создали внутриигровой магазин, создали скрипты для покупки предметов.
Практическое задание: написать скрипты для покупки усилителей и игрового оружия.
9-й модуль
День первый
Начало работы над дипломным проектом
- Структура работы гейм-студии;
- Распределение по отделам. Роли в команде;
- Определение концепции дипломного проекта;
- Принципы командной работы в учебной gamedev-студии.
Результат занятия: разделились на команды, распределили роли и сферы работы над проектом, определились с концепцией игры.
Практическое задание: разделиться на команды по 2-3 человека, определиться с ролью в проекте, утверждение концепции игры.
День второй
Дипломный проект. Часть 2. Базовая структура игры
- Создание общего вида карты и элементов ландшафта;
- Продвинутые инструменты работы с ландшафтом;
- Моделирование зданий и игровых объектов;
- Подбор скриптов, создание и оформление команд персонажей.
Результат занятия: сформировали общую структуру игры, создали базовый блокаут сцены, добавили базовые скрипты и набор элементов окружения.
Практическое задание: выполнение задач по отделам – левел-дизайнеры, художники по окружению, программисты, 3D-художники.
День третий
Дипломный проект. Часть 3. Проработка деталей игры
- Добавление сложных механик перемещения игроков;
- Тестирование игрового уровня;
- Улучшение визуальной части игры при помощи плагина Brushtool;
- Оружие и баланс в игре. Принципы нанесения и отслеживания урона.
Результат занятия: завершили работу над дипломным проектом.
Практическое задание: выполнение задач по отделам – левел-дизайнеры, художники по окружению, программисты, 3D-художники.
День четвертый
Завершение дипломного проекта
- Подготовка презентации созданного проекта;
- Презентация дипломного проекта;
- Перспективы развития и дальнейшего обучения по направлению gamedev.
Результат занятия: завершили работу над дипломным проектом курса, презентовали его родителям и завершили курс.
Практическое задание: доработать проект, подготовиться к выступлению и поучаствовать в презентации.