Андрей Кривуля поделился своим опытом моделирования волос и меха. А также рассказал об удачных технологических решениях последних лет.
Знакомство.
Привет. Меня зовут Андрей. Мне 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 имеет:
- Мощный инструмент создания перьев и scatter их по поверхности.
- Push Away From Mesh — обтекание формы, когда волосы влезают в объект во время расчесывания. Например, в ZBrush, при расчесывании, волосы часто влезают в объект и исправлять это приходится ручками. Особенно проблема заметна с длинными волосами. В Ornatrix есть кнопка Push away from mesh. Нажимаешь ее и волосы волшебным образом обтекают форму, причем правильно. При желании конечно можно включить симуляцию, но мне и этого метода было достаточно.
- Коллизии волос или плашек. Не помню точно, есть ли в XGen, но здесь есть и реализовано удобнее.
- Удобное расчесывание гидов, более удобный скульптинг волос с изоляцией частей, направление волос. (часто слышу от пользователей XGen, что они создают гиды в Ornatrix, так как там это намного удобнее)
- Направление волос. Если помните мой урок с ежом, там я расчесывал их в ZBrush. Еж который в галерее — уже создан с этим инструментом и полностью с нуля в Ornatrix. Просто тянешь мышкой визуальную стрелочку и волосы идут в этом направлении. Тоже не помню этого в XGen. Там есть похожий модификатор, но он работает слегка странно.
- Удобный инструмент создания gamedev волос, которые можно расчесывать, подстригать и так далее, а не распределять вручную по поверхности, что очень долго.
На данный момент, Ornatrix самый быстрый и крутой в динамике. К тому же он легко осваивается и постоянно улучшается. Каждые 2 недели Марсель старается выпускать новую версию.
Ornatrix хорош тем, что здесь вы можете выбрать способ распределения волос по поверхности:
- uniform (по каркасу сетки)
- random (по площади или по фейсам)
- 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.