Розробник за 60 годин створив горор-гру на блупринтах UE. Його висновки

На форумі Reddit розробник під ніком quodsoler поділився висновками, які зробив після участі у геймджемі, де треба було за мінімальний відрізок часу створити гру переважно за допомогою блупринтів (у його проєкті під кінець було 2 строки коду C++).

Головною метою геймджему було продемонструвати, що за допомогою блупринтів можна створювати навіть ігри, які потребують процедурної генерації рівнів або інших складних задач.

Тож розробник вирішив створити Escape Floor Zero — горор, натхнений PT, The Exit 8 та I’m on Observation. Він впорався з завданням за 60 годин і поділився тим, що дізнався у процесі.



Головні технічні виклики:

  • Геометрія рівнів, яка змінюється залежно від ваших виборів, тож була потреба розібратися в процедурній генерації.
  • Випадкові різноманітні аномалії, які можуть змінювати рівень.
  • Обмежений час, тому всі ітерації мають бути швидкими.
  • Сольна розробка, тож все треба робити самому

Що було добре:

Blueprint

Блупринти неймовірно потужні. Вони дають можливість спробувати щось і викинути те, що не спрацювало, А також зробили можливими надшвидке створення прототипів, як основного геймплею, так і кожної з ігрових аномалій.

Два рядки на С++ знадобилися лише для того, щоб визначити, який актор був на екземплярі якого рівня. Така можливість поки що недоступна у Blueprint. Водночас через налаштування карти тіней, коли створюється екземпляр рівня, виникає проблема з продуктивністю, тому над цим все ще потрібно працювати.


Level Instancing

З використанням Unreal Level Instances була можливість створити клаптики мапи за один раз і потім, за потреби, трансформувати в різні екземпляри. Саме тут знадобилися ті 2 строки коду на C++ — вони допомагали визначити, який актор на якому рівні розташований.

Публікація в Steam

Публікація та взаємодія зі Steam були досить безболісними, а спеціальну інтеграцію досягнень із Steam і Unreal можна зробити буквально за 30 хвилин. Після налаштування ви зможете підключати скільки завгодно досягнень.

Використання Lyra на початку
Це було необов’язково, але особливо корисно для меню налаштувань.

Що дізнався:

Миска локшини

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

У моєму випадку прототипування та виробництво були однаковими, тому багато коду врешті було розміщено в ігровому режимі (Game Mode), і тепер це велика тарілка локшини, яку важко підтримувати.

Як створити зручний та якісний алгоритм


Робити білди якомога раніше й частіше

На щастя, я від самого початку створив білд, що дозволило перевіряти підтримку контролера, продуктивність, інтеграцію в Steam тощо.


Якщо не зробите білд рано і не будете його перепаковувати часто, проблеми можуть виявитися занадто пізно. Їхнє розв’язання забере у вас значно більше часу, ніж якби ви виявили їх раніше.


Для сольної розробки важливий початковий дизайн

Якби початково було обрано робити більш орієнтовану на персонажів гру, як-от hack an slash від третьої особи, проєкт не був би завершений у такі короткі строки. Обсяг роботи, якої потребують анімовані персонажі, і типи взаємодії з ними неймовірно великий.

Створення асетів

Це гра від першої особи, яка вимагає якнайменше персонажів. Використовував для асетів Quixel Bridge, інтегрований в Unreal і деякі асети з Unreal Marketplace, які вони щомісяця роздають безкоштовно.


Соло-розробник мусить бути швидким, тож асети було модифіковано відповідно до потреб. Наприклад, один з монстрів — це збільшена курка, поєднаня з вовком та кількома собаками. Звісно, це працюватиме не з усіма жанрами ігор.

Дотримуйтеся свого бачення

Коли у вас немає обмежень для розробки гри, дуже легко дати волю уяві й почати додавати функції, які не відповідають початковому баченню гри. Створювати прототип — це добре, але коли у вас є чітке бачення, дотримуйтеся його канви та завершіть його. В інакшому випадку буде складно завершити проєкт. Натомість ви, ймовірно, отримаєте масу цікавих функцій, але не будете мати готову гру.


Висновок


Це був чудовий досвід — побачити, чого можна досягти за такий короткий проміжок часу в 60 годин. Наразі з того, що залишилося зробити — дошліфувати гру та змусити людей про неї дізнатися.

А у вас був досвід швидкої розробки ігор на гейм джемах? За який час ви найшвидше справлялися зі створенням гри? Які знання дав вам той досвід? Що з тими іграми зараз? Розповідайте у коментарях!

Підписуйтеся на Telegram-канал @gamedev_dou, щоб не пропустити найважливіші статті і новини про геймдев

👍ПодобаєтьсяСподобалось2
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Треш-контент тепер чомусь називається грою в нашому геймдеві. Навіщо ж так знецінювати нашу ігрову індустрію... Не закидуйте сміттям геймдев

Ніхто й не каже, що це нормальний геймдев, це ж гра на геймджемі за 60 годин на блупринтах. Але як досвід здалося цікавим

так це ж класика інді гейдеву: накидати безкоштовних/спірачених ассетів в анріал/юніті, якимось чином випустити в стімі і вийти на пенсію в 25. Якщо гра не вистрелить — повторити ще раз

Підписатись на коментарі