Як розробники запустили курс з Unreal Engine у виші

Привіт! Я Володимир — Unreal Engine Developer у компанії N-iX. Я та ще кілька моїх колег розробили з нуля Unreal Engine курс для Національного університету «Львівська політехніка». Як і навіщо? Поясню у статті. Сподіваюся, моя розповідь стане корисною тим, хто теж хоче ділитися своїми знаннями зі студентами.

Як ви думаєте, скільки потрібно часу, щоб запустити ознайомчий курс з UE4? Ми витратили на це п’ять місяців, з яких три готувалися і два — викладали.

А якщо замахнутися та запустити курс з UE4 у виші як окремий предмет? У нас це займе два з половиною роки. Так, на осінь 2022-го вже запланований напрям з вивчення Unreal Engine у Львівській політехніці. Але про все за порядком.

Робочий процес в N-iX Game & VR Studio

Як усе почалося

До N-iX звернувся професор Львівської політехніки Дмитро Федасюк і запропонував співпрацю щодо викладання напряму віртуальної реальності. Під час обговорення з’явилася амбітна ідея допомогти запустити повноцінний курс, який би ознайомив студентів кафедри програмного забезпечення з інструментами для створення ігор та віртуальної реальності та дав змогу здобути практичні вміння й навички розробки проєктів засобами UE4. Для нас це було цікаво тому, що по закінченню курсу ці студенти будуть готовими до інтерв’ю на позицію стажиста або молодшого спеціаліста в N-iX (або будь-якій іншій компанії).

Хто ми

Ми — це N-iX Game & VR Studio. 150+ фахівців, які займаються розробкою ігор та B2B-застосунків віртуальної реальності. Для розробки ми використовуємо UE4 та Unity, маємо багато втілених проєктів і відомих партнерів. Безпосередньо над курсом з нашого боку працювало шість фахівців — три програмісти та три гейм-дизайнери.

Я відповідав за організацію курсу від N-iX, маю педагогічну освіту і до ІТ відпрацював 6 років у профтехосвіті (маю звання вчителя 1-ї категорії — то як мідл). Також, окрім викладання, ліцензував нові професії у профтехосвіті.

Як в університетах можуть з’являтися нові курси

Будь-який навчальний заклад готує студентів суто за спеціальностями. Кожна спеціальність базується на програмі — переліку предметів, тем і годин, які будуть викладати. Програму затверджує Міністерство освіти та науки України, вона підкріплюється сертифікатом. Відхід від програми загрожує санкціями та зниженням держзамовлення (фінансування) для закладу. Якщо ж виш хоче ввести нову спеціальність, потрібно підготувати програму на 5–6 років і підкріпити її дидактичними матеріалами з усього циклу. Це для розуміння, чому нові напрями з’являються нечасто і в наших університетах усе ще вчать принципи роботи ЕОМ.

Сумно? Насправді не зовсім, адже кожен навчальний заклад має змогу змінити програму під себе на 15–20%, що закладається «вільними» годинами в план. І розроблений нами курс з UE4 має якраз зайняти частину цих годин для однієї з професій в політесі.

Як ми працювали над курсом і його структурою

Ми почали з організації навчання викладачки університету: засетапили їй робоче місце в офісі N-iX і забезпечили технікою, паралельно почали напрацьовувати програму майбутнього курсу. Доступ до офісу був 24/7 без жодних обмежень, щоб викладачка не тільки здобула необхідні технічні навички, а й побачила сам процес розробки зсередини.

Паралельно я та ще двоє моїх колег — Олексій Ковалевський та Ігор Пундєв, Senior-розробники з досвідом роботи над ААА FPS — працювали над матеріалом для курсу.

Спершу в нас було кілька зустрічей-брейнштормів, на яких ми вирішували, як проходитиме курс. Ми визначили теми та матеріали, які маємо надати, щоб студенти здобули якісні знання та наприкінці навчання змогли створити прототип гри. Кожен етап мав давати відчуття прогресу в розробці та одночасно бути складником більшого прототипу.

Тож ми розділили курс на 5 блоків: ознайомлення з Unreal Engine, робота з системою Foliage, UI, штучний інтелект та анімації. І кожен з нас зайнявся свою частиною. Щоп’ятниці проводили зустрічі з Данилом Полуденним, Head of N-iX Game & VR Studio, де фіксували наш прогрес і визначали, що маємо закінчити до наступного тижня (залежно від завантаженості на роботі). Оскільки ми фултайм зайняті на проєктах, то готували курс у позаробочий час з підтримкою компанії — N-iX оплачувала нам ці додаткові години.

Мотивовані підготувати курс до весни, ми за два місяці пройшли першу ітерацію і зібрали методичні матеріали.

Для побудови курсу користувались матеріалами від Unreal Engine, взявши проєкт First Person Shooter як базу. Вся ігрова логіка мала бути в С++, з якою ми працюємо багато часу, тоді як в Blueprint мали бути макети UI-панелей, анімації та налаштування ігрових модулів.

Наш план був такий:

  • Ознайомити студентів з Unreal Engine та навчити створювати перші базові класи.
  • Розповісти про системи Foliage і показати, як можна робити власний унікальний ігровий рівень, створювати та застосовувати матеріали, виставляти світло та налаштовувати звуки.
  • Запланували додати UI, щоб ознайомити студентів з UMG і Slate, та готувати HUD-елементи для відображення кількості набоїв, життів тощо. Логіку ми робили в Blueprint, а студенти мали б переписати це на C++ (оскільки вони взаємозалежні).
  • Навчити налаштовувати ігрового персонажа та прописувати його поведінку.

Окремий блок був про анімації та АІ, де запланували розповісти, як налаштувати просту AI-модель для бота та у разі знаходження опонента стріляти по супротивнику.

Кінцевий етап — дати студентам зібрати build, який би підсумував вивчене під час курсу.

Крім того, підготували й лекційну частину: додали інформацію про розробку ігор від Данила, Head of N-iX Game & VR Studio, та наших гейм-дизайнерів, які склали чотири лекції про вступ в ігрову індустрію, як вона працює та що таке дизайн ігор.

Пілотний проєкт

Через локдаун студентів перевели на дистанційне навчання, і вони втратили доступ до лабораторій політеху, а відповідно й до шоломів віртуальної реальності. Ми вирішили не сидіти без діла та використати це, щоб потестити наші напрацювання з курсу на малій групі слухачів. Тож підготували факультатив для студентів 2-го курсу кафедри програмного забезпечення. Вони вже мали базу із С++ і ООП, тому можна було сконцентруватися на UE і проєктах. Університет дав нам список охочих, з кожним ми провели технічну співбесіду, яка відповідала матриці компетенції компанії на посаду джуніора. Питання ставили суто з С++ і лінійної алгебри. Так відібрали 8 осіб для факультативу.

Перед викладанням курсу студентам ми провели внутрішню апробацію на фахівцях N-iX. Це були або C++ деви, які ніколи не працювали з UE4, або QA-спеціалісти, які мали досвід з UE4, але не вміли програмувати. Завдяки цьому отримали зворотний зв’язок та виявили деякі труднощі, внесли корективи. Наприклад, додали більше візуальних матеріалів для розуміння, що саме студент має отримати в проміжному результаті, що було особливо важливо під час самостійного опрацювання матеріалу. Також зробили окремий розділ з відповідями на стандартні питання та описали налаштування середовища й дали список корисних порад у відповідь на «що робити, якщо мій білд не запускається?».


Приклад, який ми додали в матеріал курсу

Усі необхідні для роботи матеріали залили в Git-репозиторій, а кожен студент мав власну релізну бренчу в проєкті. Це дало можливість студентам стежити за успіхами або помилками колег, а нам — легко перевіряти код або швидко змінити бренчу, щоб допомогти студенту вийти з патової ситуації.

Підсумок усіх занять — розробка власного проєкту. Це завжди був FPS, але кожен студент мав свій набір вимог, які показували рівень засвоєння матеріалу і вміння застосовувати його на практиці.

Висновки

Ми не ставили собі за мету вкластися з курсом у визначений час, а радше навпаки, хотіли заміряти, скільки часу нам потрібно на викладання вступного курсу. Зрештою він зайняв 40 годин (10 тижнів по 2 заняття), а можливим це стало завдяки тому, що ми працювали зі студентами, які були супервмотивовані та мали базу з С++.

За результатами «курсових робіт» ми вже запропонували роботу в N-iX трьом студентам.

Сподіваюся, що розроблений нами курс справді допоможе Львівській політехніці запустити потужний Unreal Engine напрям та готувати кваліфікованих фахівців, які в майбутньому стануть і нашими колегами в N-iX. Адже потреба у крутих Unreal Engine розробниках є завжди.

Дякую, що дочитали :) Якщо є питання — лишайте у коментарях, спробую відповісти. Також приєднуйтесь до нашої команди N-iX Game & VR Studio, у нас завжди є відкриті позиції.

Похожие статьи:
В сети уже появлялась неофициальная информация о смартфоне Xiaomi Mi 5, а теперь стала известна вероятная дата анонса нового устройства....
Здравствуйте, уважаемые читатели! Сегодня предлагаем обсудить с вами удобство размещения приложений на рабочем столе.Например, в в...
Оператор мобильной связи Tele2 объявил о завершении процедуры переноса корпоративных номеров (MNP, mobile number portability) сотрудников...
Советы сеньоров — новая рубрика, в рамках которой опытные специалисты будут давать практические советы джуниорам —...
У грудні 2020-го Міністерство цифрової трансформації презентувало дорожню карту реформи IT-освіти в Україні...
Яндекс.Метрика