Решил здесь описать способ конвертирования анимации на обычных костях в BIP скелет. В своё время "перерыл" весь интернет что бы найти информацию как это делать. Ничего не нашел. Сейчас уже плагин BIPPY есть для 3ds Max. Но тогда его и небыло ещё( то ли был, только я просто о нем ничего незнал). Вобщем, сам до всего додумался как это сделать можно. Помогли туториалы по MotionBuilder, которые были выложены на одном форуме.
Я использовал 3ds Max 8 SP3 и MotionBuilder 7.5 Extension 1. Принцип заключается в том, что кости скелета - это как маркеры на теле актера.Из 3d max экспортируем анимированный скелет в MotionBuilder в формате FBX.И дальше в MotionBuilder работаем с ним как с файлами MOCAP. Обрабатываем и экспортируем оттуда в *bvh формат. В 3d max подгружаем к бипеду через меню Motion Capture.
Только там вся анимация передается персонажу Dancer. Нам это не нужно. Нам нужно передать анимацию Character Studio в 3ds Max. Для этого нам нужно с ней подружится. И для этого есть скелетная форма CS_BVH.fbx. Качайте и распакуйте в любую папку. В программе MotionBuilder на Asset Browser нужно щелкнуть LMB и добавить путь к скачанному и разархивированному файлу . Перетаскиваем её в сцену и точно также как в уроке подключается Dancer , также подключаем скелетную форму(из панели Asset Browser тянем во вьпорт , добавленный ранее cs_bvh.fbx, тянем его поверх персонажа и бросаем.). Dancer, конечно, не перетаскиваем в сцену. Нам он не нужен. Уберите галочки контакта с полом Floor Contact В "Навигаторе" давим Plot Character. Потом щелкаем по Skeleton. Обратите внимание в навигаторе есть иконка с замком. Если какая-то панель нужна всегда поверх остальных щелкаем по "замку". Потом только не забудьте ее отжать обратно, иначе можете не увидеть часть нужных панелей, которые в обычном случае всплывают автоматически. Выставляем параметры конвертации, не забываем про FPS. Поставьте все как у меня и давите Plot. Выделите на "скелетной системе BVH" объект BVH:Hips File / Export / *.BVH Поставьте все как у меня. Обратите внимание на возможности настроек. Начало / конец сегмента анимации, скорость анимации в fps, сэмплинг. Жмите экспорт.
Теперь в 3ds Max создаем BIP скелет и через меню Motion Capture подгружаем полученую анимацию в формате *.BVH
Есть правда у описаного способа конвертирования один недостаток - анимация передаваться может неточно, могут перекручиваться руки и др. Но в MotionBuilder есть такой бегунок. Он устанвливается автоматически на определенное значение и влияет передачу. Можно его подвигать и подобрать более оптимальное значение.
Спасибо, это очень хорошая теория для тех кто хочет понять принципы конвертирования анимаций. Нет Бога кроме Аллаха и Ларс фон Триер пророк Его. И он также участник клуба GCC
Пожалуйста! Хотел бы добавить. Для программы MotionBuilder имеет значение только расположение маркеров в пространстве. Если наши кости скелета, которые мы используем как маркеры, будут поворачиваться на разные углы, то это не будет играть никакой роли. Я это к тому, что если, например, поворотом головы на скелете Bones управляет одна кость, то при конвертировании голова останется неподвижной. Поэтому в таких случаях перед тем как экспортировать скелет из 3DS MAX в формат *FBX приделайте к кости головы ещё хотя бы две кости. Они будут дополнительными ориентирами.
Если нужно конвертировать много разных файлов с анимацией на одинаковых скелетах. То лучше всего сначала взять один скелет без анимации в Т-позе, к примеру. В MotionBuilder сделать все настройки - присоеденить Actor, подключить скелетную систему и сохранить в файл. Затем подгружать в MotionBuilder через меню Merge... уже скелеты с анимацией в нашу заготовленную сцену, где все настройки( с Т-позой). Программа обновит анимацию скелета. Вместо Т-позы будет уже анимированная сцена. И потом можно будет сохранить её в формат *.bvh Если анимация не будет сохранятся то попробуйте ещё раз нажать Plot Character и снова поставить галочку Active сверху над кнопкой.
Только с той разницей что там анимация в MotionBuilder с анимированного скелета передается на заготовленный заранее в 3ds max скелет и дальше там после всех операций используется BIPPY, а я сделал проще без всякого BIPPY. Анимацию с анимированного скелета можно передать сразу скелетной системе CS_BVH.fbx(так же как в видеоуроке указав программе что это 3ds Max Biped Template ), а затем экспортировать в *.bvh и подгружать в 3ds max к бипеду. Правда у меня передать анимацию получилось криво. Я использовал MotionBuilder 2012. Файл CS_BVH.fbx , который здесь в этой теме я вылжил для старых версий программы( в 2012 и 2013 он не работает). Для новых версий этот файл есть в комплекте с MotionBuilder 2012 на диске.
Кстати у меня получился один раз конвертировать анимацию таким способом: В 3ds max к анимированному скелету я приделал дополнительные кости. Расположил их как маркеры на теле актера на том же месте где они должны быть и назвал также. После этого экспортировал из 3DS MAX в формат *.RH ( Right Hemisphere Binary ) . Это формат Deep Exploration(Плагин для экспорта в этот формат идет в комплекте с этой программой , его можно также найти и скачать в интернете ) Открыл *.RH файл в Deep Exploration и экспотировал в *.CSM , а затем в максе подгрузил к бипеду . Пришлось немножечко поэкспериментировать , что бы анимация не получилась кривой . В Character Studio есть еще опции калибровки маркеров . Но правда такой фокус у меня прошел только один раз с одним анимированным скелетом. Другой раз пробовал не получилось. Не знаю от чего это зависит.
Сообщение отредактировал Agny - Сб, 21 Сен 2013, 11:24