Top
3D арт3Ds MaxAutodeskBlenderGameDevMayaUnityUNREAL ENGINEИнтервьюПерсонажиСофт

Опыт создания волос и шерсти. Интервью с Андреем Кривулей

Поделиться

Андрей Кривуля поделился своим опытом моделирования волос и меха. А также рассказал об удачных технологических решениях последних лет.

Знакомство.

Привет. Меня зовут Андрей. Мне 30 лет и я 3D Artist. Знакомство с 3D началось у меня в 12 лет, но тогда это было баловство, которое закончилось рендером золотого чайника целую ночь. Более серьезно я этим занялся в 2009 году, когда начал изучать 3Ds Max и Maya. Я безумно влюбился в моделинг и рендеринг. Первого робота я создал на экзамен по 3Ds Max.

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

После выпуска я сразу попал в геймдев студию “Vogat Interactive”, которая делала игры для IPAD. Там я проработал 3 года, за которые мы выпустили три игры: «The Cursed Doll: Whisper of Fear», «Whisper of Fear: The Cursed Doll 2» и «Silent Valley. Mystery Mansion»

Потом, благодаря товарищам из Казахстана, я познал мир фриланса. Занимался интерьерами для них. 

Вскоре началась война. Многие студии позакрывались и нужно было думать о работе с иностранцами. На целый год я с головой ушел в творчество. Толком ни с кем не общался и формировал портфолио на Artstation. В итоге ко мне начало поступать много предложений из разных стран и работа пошла.

В период с 2014 по 2020 я успел поработать с Disney, сделать несколько NDA проектов, а также моделировал и рендерил корабли для игры “Polaris Sector”.

И несколько персонажей для них.

Сделал волосы для синематика The Light Within | Elementalist Lux Cinematic — League of Legends cinematic. Над этим проектом я работал вместе с YoonJong Song, который занимался динамикой.

Затем поработал с IXOR VFX и сделал им мех/волосы для медведя, акулы и орла. Работал над волосами замечательных персонажей в рекламе бобов В качестве 3D Generalist поучаствовал в разработке нескольких игр для VR на Unreal Engine 4. К сожалению, они так и не увидели свет.

Сделал несколько коллабораций:

С Ari Byun и Olya Anufrieva:

И с Maria Panfilova:

Дал кучу интервью и попал в известные 3D журналы. Вместе с Ryan Grobins успел сделать волосы еще в одном синематике, который скоро выйдет. За апдейтами проекта можно следить здесь.

Написал несколько секретных статей, которые скоро выйдут в нескольких выпусках одного знаменитого иностранного журнала, о котором пока нельзя говорить. Создал realtime волосы для секретного проекта Pendulo Studios

В общем, я не сижу на месте и постоянно развиваюсь. Почти каждый месяц мне приходит куча предложений от разных  студий. Но мне настолько удобно на фрилансе, что не хочется возвращаться в офис. Поэтому статус вроде «Ой, вы знаете, а я работал в очень крутой студии» или «Посмотрите, мое имя в титрах» для меня не так важен. Конечно, я с радостью поработаю над каким-то крутым фильмом, мультфильмом и так далее, но если это будет предложение на outsource. Для меня важнее всего здоровье и комфорт.

Да, где-то в глубине души я жалею об отказе от работы в MPC, Scanline VFX, DNEG, CD Project RED, Snap INC, Pixomondo, Illumination, Realtime UK, Microsoft, PearlAbyss, The Mill, Platige Image и других крутых студий. Но когда я провожу параллель между этим и комфортными условиями на фрилансе — я всегда выбираю фриланс. Может быть когда-нибудь я поменяю мнение, но не сейчас. 

Итого: 11 лет опыта в разных сферах. Разве что только анимацией всерьез не занимался. Теперь я делюсь этим опытом у себя на канале.

C волосами и шерстью начал знакомство в 2016. Тогда мне не очень понравился Fibermesh в ZBrush. Мне его было мало и я узнал об Ornatrix. Тогда же сделал ежика и свою первую прическу.

После чего, решил серьезно связать свою жизнь с волосами. Моя цель — изучить как можно больше разнообразного софта и как следует прокачать мультяшную персонажку. Она меня прям сводит с ума. 

В чем разница между волосами/шерстью для игровых персонажей и персонажей под анимацию и кино? Отличия пайплайна.

Первое отличие заключается в том, что real-time производство ограничивает качество на выходе (количество треугольников, заморочки с альфами для Unity). Есть, конечно, новая технология, которая позволяет переносить волосы как есть в Alembic, а затем открывать с помощью Groom Plugin в Unreal. Но опять же — там куча нюансов и не все так просто, как может показаться.

Real-time волосы делаются специальными plane, на которые запекается текстура. То, что для CGI можно сделать намного проще, не всегда получается сделать так же круто под real-time. Затрат времени намного больше, а результат намного хуже. Да, сейчас команда Unreal Engine, как и Unity, делает революцию — волосы выглядят намного круче, чем было раньше. Но все же, лично меня до сих пор не устраивает их качество и подход к их созданию под real-time. Я не очень люблю технические моменты и заморочки. Мне больше нравится творить и это гораздо комфортнее получается с помощью гидов и оффлайн рендеров. 

Когда я берусь за работу над любой из причесок, я создаю гиды и точно знаю, какой результат у меня будет на рендере . Волосы будут повторять форму гидов и мне не нужно думать о правильном пересечении plane с текстурой, vertex нормалях и т.д и т.п.

С plane для запекания волос не всегда получается то, что хочется. Плюс антиалиасинг (anti-aliasing) на opacity меня до сих пор не устраивает. Времени на борьбу со всякими техническими проблемами тратится намного больше, а на творчество его почти не остается. Тем более, если есть ограничения движка на поликаунт. С 5 000 — 10 000 треугольников сильно не разгонишься, особенно в создании сложных кудрей. 

Вот быстрый пример в создании простых пучков волос из нарисованных гидов.

Чтобы быстро получить такой же результат с помощью Plane, чтобы волосы выглядели такими же объемными и плавными — нужно заморочиться немного больше. Так как для большего реализма CGI волос я настраиваю большее количество волос, их толщину, сглаживание гидов для плавности и так далее.

А для Plane нужно рендерить хорошую текстуру, а слишком тонкие волосы будут ужасно выглядеть со сглаживанием в Unreal Engine. Плюс, с низким поликаунтом линия волос будет не плавной, а ребристой. Даже если вы заморочитесь с созданием tubes и назначением на них текстуры, все равно результат будет хуже, чем на CGI- рендере.

А когда количество полигонов ограничено и нельзя делать много плашек для плотности, тут уже и начинаются проблемы. А если дело касается создания кос, то я вообще молчу.

Почему волосы Элой в Horizon Zero Dawn выглядят шикарно для real-time движков? Потому что там на волосы давалось 100 000 треугольников. При таком количестве уже можно получить что-то серьезное, но качество все равно отстает от тех же CGI-рендеров. Это лично мое мнение. Мне все же больше нравится качество, которое получается в синематиках для игр, а также те волосы, которые делают для фильмов. 

В CGI нет ограничений поликаунта. Все упирается в мощность видеокарты. С топовой картой появляется возможность отображать большое количество волос во Viewport с помощью HairTube Shader в Maya Viewport 2.0, и рендера их в Vray, Corona, Redshift и т.д.

Второе отличие — рабочий процесс. 

CGI волосы создаются с помощью гидов и вы думаете больше о настройках количества волос, шейдере, назначении модификаторов и так далее. 

Realtime волосы создаются с помощью plane и запеченной текстуры на них. Там уже очень много нюансов в получении крутой прически. Да, их тоже можно создавать гидами, но в real-time нельзя контролировать интерполяцию между волосами и parting.

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

Какой софт для создания волос является стандартом индустрии?

Тут однозначно не скажешь. Большинство студий, которые приходили ко мне используют Ornatrix или XGen. У тех, кто звал в офис, в основном, свои уникальные разработки на базе XGen, Houdini, Yeti. Из-за этого они не дают работу на фриланс — не хотят утечки технологий. Но каждый софт достаточно хорошо развивается и большинство студий просто выбирают то, что стабильно работает с их пайплайном. А у всех он разный. Поэтому нельзя однозначно сказать, что лучше учить. Я начал знакомство с Ornatrix, теперь учу XGen, но также думаю о Yeti, Houdini и еще, возможно, что-то новое и интересное выйдет.

Какие программные связки ты используешь для работы в 3Ds Max, Maya, Blender? В чем разница между ними?

В 3Ds Max — Ornatrix, Maya — XGen, Ornatrix. Blender пока только начал открывать для себя, так что до волос еще не добрался. Так как я пока изучил и продолжаю практиковаться в Ornatrix/XGen, то расскажу о них. Мои подписчики часто задают этот вопрос и я уже сформировал целый конспект для себя. 

Я думаю, основное преимущество Ornatrix в его простоте и интуитивности использования. В нем можно добиться результатов быстрее, чем в XGen. Однако XGen бесплатный, и это тоже преимущество. Но, потратив время на прокачку скилла в Ornatrix, вы окупите затраты на него за один заказ, плюс еще другу лицензию купить сможете. Я не смотрел туторы по нему и после недели изучения методом тыка, сделал работу, которая попала в журнал 3D Artist, после чего пошли заказы.

Так сразу в двух словах и не расскажешь о всех его фишках. К выводам я пришел, когда больше познакомился и с Ornatrix, и с XGen.

Ornatrix имеет:

  1. Мощный инструмент создания перьев и scatter их по поверхности. 
  2. Push Away From Mesh — обтекание формы, когда волосы влезают в объект во время расчесывания. Например, в ZBrush, при расчесывании, волосы часто влезают в объект и исправлять это приходится ручками. Особенно проблема заметна с длинными волосами. В Ornatrix есть кнопка Push away from mesh. Нажимаешь ее и волосы волшебным образом обтекают форму, причем правильно. При желании конечно можно включить симуляцию, но мне и этого метода было достаточно.
  3. Коллизии волос или плашек. Не помню точно, есть ли в XGen, но здесь есть и реализовано удобнее.  
  4. Удобное расчесывание гидов, более удобный скульптинг волос с изоляцией частей, направление волос. (часто слышу от пользователей XGen, что они создают гиды в Ornatrix, так как там это намного удобнее) 
  5. Направление волос. Если помните мой урок с ежом, там я расчесывал их в ZBrush. Еж который в галерее — уже создан с этим инструментом и полностью с нуля в Ornatrix. Просто тянешь мышкой визуальную стрелочку и волосы идут в этом направлении. Тоже не помню этого в XGen. Там есть похожий модификатор, но он работает слегка странно.
  6. Удобный инструмент создания gamedev волос, которые можно расчесывать, подстригать и так далее, а не распределять вручную по поверхности, что очень долго.

На данный момент, Ornatrix самый быстрый и крутой в динамике. К тому же он легко осваивается и постоянно улучшается. Каждые 2 недели Марсель старается выпускать новую версию.

Ornatrix хорош тем, что здесь вы можете выбрать способ распределения волос по поверхности:

  1. uniform (по каркасу сетки)
  2. random (по площади или по фейсам)
  3. parametric (параметрический)

В стандартном Hair&Fur в 3Ds Max нет возможности выбора. Там волосины растут из каждой вершины полигона (если полигон четырехугольный, то их будет 4 на один полигон). Тут большую роль будет играть количество полигонов. В Ornatrix на этот вопрос обратили внимание, что приятно. Я вообще хелп не смотрел и все эти моменты сразу были понятны. Пару нюансов, конечно, спросил у создателя.

На самом деле я не люблю сравнивать инструменты, потому что у каждого свои фишки. Нужно просто пробовать и выбирать удобный для себя, слушая сердце и эмоции. Я выбрал Ornatrix, но параллельно изучаю XGen и систему Houdini Hair. Я думаю, что каждый профессиональный грумер должен знать каждый инструмент для волос. Потому что таким образом вы достигнете большего количества клиентов.

Как изменились современные инструменты для моделирования волос/шерсти?

Работа стала более интуитивной. Приступая к созданию очередного шедевра, вы практически берете расческу и ножницы. Каждый из разработчиков старается упростить процесс создания гидов. В XGen — это Interactive Grooming, в Ornatrix 3 тоже есть интересные инструменты по быстрому созданию причесок. В Houdini очень крутой плагин GroomBear. В Unity свой инструмент создания динамической шерсти — Fur Factory и Neo Fur. В Unreal Engine — Groom Tool, который позволяет импортировать Offline волосы или шерсть из Alembic File.

Какие технологические решения, возникшие за последнюю пару лет, существенно облегчили/ускорили твою работу?

Когда я только начинал работу с Ornatrix, не было инструмента Draw Strand Tool, который позволяет рисовать гиды в пространстве, а косы создавались вручную — полигонами. Сейчас этот процесс автоматизирован и позволяет создать нужную часть прически гораздо быстрее.

Много инструментов добавили именно для real-time волос, что тоже достаточно хорошо упростило их создание. Появился очень интересный модификатор, который преобразует скульпт волос в Mesh. Вот, пример его работы.

Например, можно создать несколько групп с разной толщиной. В дальнейшем эту геометрию можно перенести в ZBrush и получить готовую скульптуру с красивыми волосами. Более подробно я рассказываю об этом инструменте в своем уроке.

Например, можно создать какие-нибудь щупальца или провода. Тут уже на что хватит фантазии. 

В целом, как развилось направление за время твоей работы?

Все идет к упрощению и интерактивности. Эта сфера продолжает развиваться и чуть ли не каждые два месяца появляется что-то новое, революционное и интересное. Мне постоянно интересно учиться и я верю, что этот огонек не угаснет до самой старости. Персонажи всегда нужны, а волосы и шерсть — неотъемлемая часть процесса создания персонажей. Поэтому я думаю, что развитие будет бесконечным и интересным.

Например, уже есть разработки волос с помощью AI. 

Пока технология достаточно сырая, но я думаю, что в скором времени эти инструменты ускорят процесс создания волос. Тогда можно будет тратить больше времени на творчество, а не разные технические моменты. Также, как и говорил выше, в Unreal Engine 4 добавили поддержку Alembic Hair. Вот документ об этом.

Как думаешь, в чем причина твоего успеха и что ты делаешь для своего продвижения?

В упорном труде и работе над собой. Если посмотреть на великих успешных людей, все они очень много работают. Конечно, я слежу за здоровьем и не переусердствую (каждые 45 минут делаю пятнадцатиминутные перерывы для разминки, ходьбы, зарядки), но подъем в 6 утра и работа с 7.00 до 20.00 — это про меня. Я четко фокусируюсь на выполнении задачи и не отвлекаюсь на соц.сети. Они у меня открыты только для прослушивания музыки.

Что я делаю для продвижения? Загружаю свои работы на Artstation, CGSociety. Возможно, ведение ютуб канала помогает в моем продвижении. Возможно, интервью, которые уже дал. Например, после публикации в 3D Artist, количество просмотров моего профиля на их сайте, из 50 тыс буквально за месяц выросло до 700 тыс.

Я просто хорошо делаю свою работу — в этом, наверное, и причина успеха. Честно, я никогда серьезно не задумывался над этим вопросом. Мне просто нравится делать то, что я делаю. Я отдаюсь этому всей душой и сердцем. Видимо, другие это чувствуют, замечают и приводят меня к успеху. Также поддержка родителей с самого детства привела меня к той личности, которой я стал. Одержимость любимым делом и вера в себя. Упорный труд и настойчивость, любого может привести к тому, к чему я пришел еще в свои 25. Главное — никогда не сдаваться, не зависеть от лайков и просто отлично делать свою работу. Вот наверное и весь рецепт.

Интервью провел Олег Мощенко.

Подписывайтесь на нас в Facebook, Telegram, Vkontakte, Pinterest.