Change Language:
Импорт C3D в Houdini. - Datsyk Mykhailo
View Sidebar
Импорт C3D в Houdini.

Импорт C3D в Houdini.

Октябрь 19, 2014 2:12 пп0 comments

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

Недавно появился проект, в котором нам предстояло создать систему позволяющую в максимально сжатые сроки создавать контент для ТВ передачи, которую вместо людей будут вести человекоподобные животные. Так как наша команда мало сталкивалась с персонажной анимацией в общем и с лицевой в частности нам пришлось перелопатить кучу информации по готовым решениям и математике связанной с этим вопросом. При этом нужно было автоматизировать процесс следования данных по всей цепочке производства: от съемок(натурных+мокап) до собственно получения готового результата.

В итоге нас вдохновил Горлум из «Властелина Колец», ребята из Weta Digital создали хитрую систему основанную на смешивания различных состояний лица героя по определенным законам. У нас есть своя студия мокапа, собственно мы начали плотно сотрудничать с ними. У нас получилось снимать одновременно 2 потока данных: данные о положении точек на ключевых узлах лица, которые дали нам возможность создать модель смешивания состояний, данные о движении тела и головы.

Нам выдали 2 типа данных из Vicon Blade (fbx с поведением головы и с3d c точками в пространстве). Наш основной софт для работы Sidefx Houdini, он прекрасно справился с fbx данными, но к сожалению c3d он прочитать не смог, поиск готового решения ни к чему не привел. На сайте разработчика формата я нашел несколько Python модулей, способных обрабатывать его тип данных. Их я взял за основу для своего инструмента.

После того как все данные успешно оказались в Houdini мы сделали ассет, в который подгружалась вся информация. Houdini имеет огромный потенциал не только как среда для создания графики, но и как полноценный инструмент проектирования. Асеет анализирует расстояния между ключевыми точками полученной анимации и смешивает различные состояния лица героя по хитрым маскам и законам(таких состояний нам пришлось сделать около 40, пока нас не устроил результат). Имеется также возможность вмешательства в автоматический процесс, посредством анимации отдельных связей.

Были еще проблемы с синхронизацией данных (2-х мокапов и видео) мы ее решили и оформили, пока не коммерческий, но вполне работающий инструмент. Вот ссылка на анонс: http://postmodern.com.ua/blogs/view/33

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

Собственно сам инструмент для Houdini. Вот так выглядит процесс импорта:

c3dtohoudini

Я реализовал 2 типа импорта для разных задач:

  • Массив точек в которые записываются данные, включая имя каждого маркера
  • Группа Null нод с названием каждого маркера

diffrent_types_c3d

Видео демонстрация готовых к работе данных:

 

Инструкция по установке и файлы примеров есть на GitHab:

Leave a reply


Trackbacks