Вітаю! Мене звуть Олександр Васін. Я – 3D Artist у харківській студії Plarium, а у вільний час веду курс створення персонажів для падаванів. Саме їм (а також і вам) я розповім про створення персонажу «Перський воїн». Даний персонаж створювався для військової онлайн-стратегії «Спарта: Війна імперій» (Sparta: War of Empires).

Я знаю, що мої падавани хотіли б докладніше дізнатися про те, як я створюю персонажів. Думаю, дещо виявиться корисним і для всіх інших. Отже, поїхали.

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

Загалом, необхідно було ґрунтовно все обмізкувати. Я перерив купу референсів і натрапив на чудовий фільм «300 спартанців» 1962 року. У ньому я і знайшов єдині хороші рефи на лучників.

На підставі знайденого матеріалу я створив мега-концепт свого майбутнього персонажу:

Мій колега-сусіда, поглянувши на мій монітор, був у невимовному захваті.
Ліплення моделі я почав з голови. Я знав, що модель також буде використано в нашому  сінематику «Спарта: Війна імперій» ® «Непохитні», тому довелося враховувати деякі коментарі від товаришів: «Виразніше обличчя! Брови давай… суворіше! Жени блендшейпи!» тощо.
Нічого секретного в процесі створення голови не відбувалося – ліплення в ZBrush і все. Зрештою, зупинилися на такому варіанті:

Далі я перейшов до одягу і броні.

Поножі і наручи в мене вже були, оскільки я їх створив раніше для Сінематика. Тому з метою економії часу скористався вже готовими.

Їх я створив у ZBrush, закліпки та нитки розміщував за допомогою Insert Mesh і режиму Curve. Як саме, напишу нижче.

Закинув готові частини у Marvelous designer та симулював одяг – процес нескладний.

Тканину без змін закинув у Maya та ZBrush – над нею необхідно ще попрацювати. Далі в Maya почав моделювати шматки броні тощо. Накидав лоупольками основні форми.

Потім закинув все в ZBrush і почав скалпити хайполі.

Я завжди намагаюся уникати простих форм у дизайні персонажу, тому зробив наплічник незвичайним, тришаровим. Така форма обумовлена ​​тим, що за задумкою персонаж – лучник, тобто такий наплічник служить додатковим захистом голови при пострілі. Так само я зробив і з ременем на грудях.

Усілякі дрібні болти та закліпки зручно розміщувати просто в Maya за допомогою інструменту SnapTogetherTool.

Клік на потрібну поверхню закліпки, другий клік – на потрібну поверхню шолома, Enter– усе готово. Якщо ж у закліпки немає дна, то вищезгаданий процес буде складно виконати.

Далі закинув все в ZBrush і почав ліпити хайполі. Зазвичай у мене немає чіткого пайплайна, я працюю псевдохаотично. Та що там, я і є сама псевдохаотичність: постійно перекидаю частини геометрії із ZBrush у Maya, і навпаки, щось імпортую, додаю.

Паралельно симулював ганчірку на шоломі в Marvelous та закинув її у ZBrush до решти геометрії.

Тепер трохи сатанізму:

Нитки робив наступним чином:

1. Змоделював нитку в Maya.
2. Імпортував у ZBrush, вирівняв за допомогою Preview.
3. Створив Insert Mesh Brush.
4. Увімкнув режим кривих. Тут же можна налаштувати криву, її діапазон, залочити початок або кінець.
5. Налаштував потрібну глибину, меню Brush – Depth. У меню Modifiers також можна покрутити деякі налаштування щітки.
6. Готово!

Саме час зберегти нашу щітку:

A якщо натиснути на кнопку SelectIcon із затиснутою кнопкою Alt, іконка щітки зміниться на те, що в даний момент знаходиться у сцені.

Ще одна корисна хитрість:

1. Створюємо полігрупу.
2. Приховуємо все непотрібне, тиснемо Stroke – Frame Mesh. В результаті по краю виділеної геометрії формуються криві.
3. Беремо зроблену вище щітку і тиснемо в криву. Оце так! Тепер можна змінити розмір щітки і тиснути на криву – розмір нитки мінятиметься відповідним чином.

Закліпки і Х-подібні нитки і кільця по краю розміщую таким самим чином. При розміщенні закліпок затискаю Ctrl – це дозволяє зберігати один і той самий розмір Insert Mesh Brush.
Кілька проміжних скріншотів:

Ну і наостанок – зброя:

Практично всі сабтули мають сабдіви, тобто ретопологію робити не доводиться. Якщо ж сабдіви загубилися, можна сміливо використовувати Zremesher. Дрібниці можна запекти на нормалі. Нитки можна пофарбувати яким-небудь кольором, а потім запекти карту Color map, за якою можна зробити маску в Photoshop. Це спростить процес малювання текстури. Іноді я просто залишаю нитки і закліпки як є – мешем. Якщо в результаті моєї роботи вийде картинка, а не анімований персонаж, або ж частина геометрії, на якій знаходяться ці закліпки (наприклад, металевий наплічник тощо), не буде деформуватися при постановці персонажа в позу, то дрібні деталі залишаю.

Далі експортую сабтули – окремо хайполі, окремо лоуполі. Запікати карти буду в xNormal.

Збираю лоуполі в Maya.

Uv-розгортку роблю в Headus UvLayout. Величезний плюс останньої версії в тому, що тепер UvLayout можна з’єднати з Maya (схоже на плагін GoZ для ZBrush). Я можу прямо кинути меш з Maya в UvLayout, зробити ювішки, а потім обновити uv моделі в Maya без експорту-імпорту геометрії. Дуже зручно та швидко.

Зазвичай роблю 2-3 uv-листа по 4k на модель. У даному випадку 1 – голова, руки; 2 – одяг з Marvelous Designer (Marvelous створює ідеальні uv); 3 – все інше.
Далі запікаю карти normal map, ambient occlusion, cavity.

Текстуру малюю в Mudbox.

Тут є одна хитрість, що дозволяє малювати текстуру відразу по всій моделі, якщо uv-листів декілька:
1. Призначаю на модель в Maya стандартний матеріал, не вірейський.
2. Експортую одну частину геометрії (розгорнуту на одному uv-листі) в *.obj або *.fbx.
3. Одна за однією експортую інші частини, обов’язково в форматі *.fbx.

Тепер залишилося потиснути по різних частинах моделі – створити шари для текстурування, призначити матеріали і т.д.

На цьому етапі у мене знову вмикається режим псевдохаотичності – постійно перемикаюсь між Mudbox і Photoshop, малюю то там, то там. Mudbox дуже хороший для текстурування, але має свої недоліки, для боротьби з якими потрібні дійсно сталеві нерви.

Текстуру малюю шарами приблизно в такій послідовності:
- колір;
- фактура металу, шкіри, ганчірки;
- світло/тіні;
- бруд;
- «збитості» з країв;
- AO;
- Cavity.
Ось так виглядають карти:

Останню карту буду використовувати в якості маски для Blend material у V-Ray.
Призначив VRay-матеріали на модель і накинув текстури. Ось так виглядає шейдер однієї з частин геометрії:

Карту дифузії найчастіше призначаю через Dirt, це дозволяє додати зображенню контрасту і ambient occlusion. Іноді цього не роблю. До бленд-матеріалу підключаю базовий матеріал і метал через карту.
Далі шейдер фізіономії:

Шейдер вийшов трохи мудрованим: в VRay Fast SSS2 не дуже добре працює вбудований спек, тому я призначаю карту спека на додатковий матеріал, а потім підключаю його через бленд-матеріал із ввімкненим режимом Additive mode. У VRay Fast SSS2 спек роблю чорним, а в додатковому матеріалі, відповідно, дифуз.
Але це тільки тестовий рендер, попереду ще поза та фінальний рендер.
Між іншим, у цей момент мого лучника вирішили змінити на мечника. Добре, що у мене була вже готова зброя, яку я моделював для перських воїнів у нашому сінематику. Тому ніхто не постраждав.

Настав час робити ріґ. Особисто я вважаю це заняття просто нестерпним і відмовляюся розуміти, як з ним мучаться мої товариші-аніматори. Тим не менш, у позу персонажа ставити потрібно.
Попередньо поцупивши у аніматорів готовий скелет, я зайнявся скіннінгом.
Тепер найцікавіше – ганчірки з Marvelous.
Оскільки я вже вирішив робити ганчірки в Marvelous, є три варіанти розвитку подій.

1) Симулюю ганчірки у Т-позі, далі ставлю в позу за допомогою скіна в Maya. Перевага – швидкість процесу (за умови, що сітка на тканині не дуже щільна). Недолік – після надання пози складки погнуться, виглядатимуть фізично невірно і стирчатимуть, ніби на них не діє гравітація.

2) Ставлю персонажа в позу, далі симулюю тканину в Marvelous. Перевага – складки будуть виглядати відмінно. Недолік – важко створювати тканини без симетрії, і ще важче, якщо поза складна – сильно зігнута рука в лікті тощо.

3) Використовую point cache. Переваги – ідеальні складки. Даний спосіб можна використовувати для симуляції тканини на анімованих персонажах. Недолік – пекельно складно і заплутано.

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

Отже, у мене була лоуполі-модель, на якій я симулював ганчірки в Marvelous на самому початку створення персонажа (у Т-позі). Я заскінував її в Maya і створив коротку анімацію переходу з Т-пози в позу, яка буде рендеритися.
Довжина анімаційного шота – близько 30 кадрів. Після завмирання у фінальній позі знадобилося ще кілька кадрів (коли персонаж зупиняється, одяг деякий час рухається за інерцією).
Далі в Maya – меню Animation – Geometry cache – Export geometry cache options:

Тиснемо Apply. У зазначеній папці створилися файли *.xml та *.mc.
Експортував модель в *.obj у Т-позі. Важливо, щоб геометрія була «чистою» – жодної історії, жодних зв’язків і т.п.
Тепер в Marvelous. Імпортував модель:

Далі симуляція – кнопка запису:

Експорт кешу з Marvelous та імпорт до Maya:

Отже, маємо засимульовані ганчірки.
Ось перший та останній кадри:

Залишилося підігнати інші частини геометрії (їх заскінено).
Виставив камеру, джерела світла та dome light для рендеру.
Ще довелося трохи підігнути спідницю lattice деформером.

Рендерив за пассами: ao, reflect, shadows, spec тощо.
Постеффекти та задник підмалював у Photoshop.

От і все. Дякую за терпіння!
Мир! =)