Покрокова інструкція зі створення персонажа для української горор-гри про Першу світову

Усім привіт! Мене звати Дмитро Чумаченко, я Art Director в Red Viburnum Studio. Нещодавно ми анонсували наш проєкт під назвою F20. Це сюжетна однокористувацька гра у реалістичному стилі з видом від першої особи в жанрі psychological combat survival horror.

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

У цьому блозі я покроково опишу процес створення моделей для нашої гри.

1. Модель голови

Все починається зі створення моделі голови, а модель голови — з 3D скану обличчя людини, модель якої ми хочемо мати. В нашому випадку ми використовували додаток Polycam. Для отримання скану необхідно зробити серію фотографій людини з усіх боків і різної висоти з кроком обертання навколо у кілька градусів. Після цього треба передивитися всі зроблені фотографії і видалити ті, які якимось чином зіпсовані — змазані, розфокусовані тощо.

Після ми завантажуємо фотографії — отримуємо скан, який треба забрати з сайту Polycam.

Далі треба обробити отриманий скан у 3D редакторі, видалити всі зайві частини і розібратися з артефактами, а вже потім переходити до створення Metahumanʼа в Unreal Engine.

Імпортуємо скан, заходимо в Metahuman identity, підправляємо згенеровані маркери на обличчі, які визначають де саме на нашому скані знаходяться очі та губи, і переводимо меш в Metahuman.

Тепер можна переходити безпосередньо до редагування обличчя MetaHumanʼа в MetaHuman Creator. Використовуючи фотографії, відео і скан, який ми робили на початку, обираємо:

  • Тон шкіри;
  • Колір очей;
  • Один із запропонованих варіантів для брів, волосся, бороди і вусів;
  • Колір волосся.

Якщо є така потреба, то редагуємо фому рис обличчя, рухаючи відповідні маркери.

Всі грум-асети, які були зроблені в MetaHuman Creator є проміжними. Оскільки зазвичай неможливо підібрати зачіску, форму бороди і брів так, щоби вона ідеально відповідала моделі. Те саме стосується і текстур на обличчі — є унікальні риси, як от родимки, шрами чи зморшки, які не вийде додати в MetaHuman Creator.

Тіло і одяг для MetaHuman можна також відредагувати на сайті, тож обираємо один з запропонованих варіантів. В нашому випадку ми збиралися «перевдягти» модель, тож обирали варіанти одягу які будуть найближчі до того, що ми збираємось використовувати. Це потрібно, щоб у майбутньому було легше пеереносити вагу з однієї моделі на іншу. Основа для майбутньої моделі готова.

Завантажуємо нашого MetaHumanʼа в Unreal Engine через Quixel Brige, відокремлюємо модель голови, експортуємо її і належні їй основні тектури. В 3D редакторі треба змерджити шов, який є на потиліці моделі голови, після чого можна переходити до скульпту унікальних рис моделі, створюючи таким чином хайполі модель для запікання нормалей на початкову модель голови.

Переходимо в Substance Painter, де підмальовуємо ті самі унікальни риси, за необхідністю правимо тон шкіри на деяких ділянках обличчя, експортуємо текстури з Substance Painter’а до Unreal Engine, заміняємо відповідні початкові текстури.

Якщо придивитися уважніше то можна помітити, що мап нормалей і бейсколору у MetaHumanʼа більше одного набору, це потрібно для більш детальної міміки обличчя. Тож експортуємо ці набори текстур, вставляємо їх в Substance Painter, так щоб в ієрархії вони знаходились нижче ніж ті основні текстури, які ми робили раніше, і експортуємо ці додаткові текстури. Робимо так для кожного набору, замінюємо початкові текстури в Unreal Engine. Текстурування на цьому завершено.

Переходимо до створення груму. За допомоги референсів, створюємо відповідне волосся, брови, вуса і бороду. Імпортуємо асети, які в нас вийшли в Unreal Engine, створюємо для кожного них GroomBindingAsset, після чого в блюпринті нашого MetaHumanʼа замінюємо старе волосся на те, яке ми зробили. На цьому модель голови завершено.

2. Модель тіла

Оскільки нам необхідно замінити моделі одягу для нашого Metahuman’а, то спочатку треба створити нові моделі одягу. В нашому випадку — британська військова форма часів Першої світової війни. Тут все досить стандартно:

  • Симуляція одягу в Clo3D;
  • Подальший скіульпт моделі, яку ми отримали при симуляції;
  • Ретопологія;
  • Текстуринг.

Далі треба прив’язати модель до скелету Metahuman’а. Отже експортуємо модель тіла і одягу з Unreal Engine. За необхідності підганяємо розмір і положення моделей нового одягу так, щоб він співпадав з моделями одягу, які вже є на Metahuman’і. Переносимо вагу з тих моделей, які ми експортували з Unreal Engine на наші моделі одягу. Після чого треба вручну допрацювати отриманий результат, оскільки при переносі можуть бути (і будуть) помилки, які треба виправити.

Імпортуємо отримані моделі в Unreal Engine на скелет Metahuman’а, заміняємо елементи одягу в блюпринті, і наша модель повністю готова.

3. Анімування обличчя

Для анімування обличчя нам необхідно скачати додаток Live Link Face. В ньому ми робимо запис обличчя актора (не обов’язково того, з якого ми робили модель). Імпортуємо отримані файли в Unreal Engine. Після цього треба створити MetaHuman Identity людини, яка була актором для запису через цей додаток.

Наступним кроком треба зробити MetaHuman Performance Asset, у якому відбувається перенос руху обличчя з відеозапису на кістки голови MetaHuman. Цю анімацю можна запікти і використовувати на будь-якому MetaHymanʼі.

4. Анімування тіла

Анімації для тіла ми робили двома способами, залежно від складності і місця застосування. Це пряма анімація в сиквенсері Unreal Engine за допомогою таймлайна і ключових кадрів, а також motion capture анімація за допомогою додатку Rokoko. Такий спосіб знімання руху актора не є дуже точним навіть в режимі з двома кутами зйомки, досить часто рух пальців на руках передається неправильно, також іноді «завалюється горизонт», або є паразитні рухи кісток скелету, яких там не має бути. Можна сказати, що ця технологія цікава, але на даний момент потребує розвитку і допрацювання, тому зараз ми використовуємо Vicon Motion Capture System.

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

На цьому все. Дякую за увагу!

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

👍ПодобаєтьсяСподобалось6
До обраногоВ обраному3
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

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