Я работаю над небольшой многопользовательской игрой, в которой есть единственная сетчатая игровая сетка, в которой многие игроки используют ее. Some Background: Я пробовал загрузиться через майю и экспорт blender collada. Оба, похоже, ссылаются на некоторые данные анимации, но я не мог заставить их работать. Я пробовал экспортер майя JSON, который выплюнул крошечные файлы 1k только с материальной линией. Наконец, работал экспортер блендера JSON. Для тех, кто также пытается загрузить кожуру сеток, я нашел, что это очень полезно: Model with bones animation (blender export) animating incorrectly in three.jsThree.js - экземпляры скелетных ячеек скелетной сетки, анимации и смешивания
Так что теперь у меня есть geometry
объекта и materials
массива из загрузчика JSON.
я могу установить skinning=true
на материалах, создать THREE.SkinnedMesh
, добавить его на сцену, добавить анимацию через THREE.AnimationHandler.add
(Я совершенно непонятно, на что на самом деле делает AnimationHandler
), создать THREE.Animation
, вызовите play()
и update(dt)
, Наконец, у меня есть одна сетка и анимация, играющая в моей сцене.
Теперь я хочу эти ...
Многие экземпляры - Я хочу больше, чем одна модель игрока бегает в моей сцене.
- Я не хочу, чтобы одни и те же данные о сетке и анимации загружались много раз.
- Время анимации должно быть в каждом экземпляре (поэтому они не все ожидают синхронно).
Должен ли я создавать много
THREE.SkinnedMesh
иTHREE.Animation
для одной и той же модели? Куда входятTHREE.AnimationHandler
?Многие анимации - Я хочу, чтобы холостые/беговые циклы могли воспроизводиться индивидуально.
AFAIK есть только одна временная шкала анимационных ключевых кадров. Как это делает Three.js для меня, или мне нужно сделать это вручную?
Анимация Blending - Когда персонаж останавливается и замирает с неработающей анимацией, я не хочу моментальные оснасток от одного к другим. Я хотел бы приостановить анимацию запуска и смешать это состояние обратно в простую анимацию.
Возможно ли это с помощью экранированных сеток (не морфовых целей)? Есть ли примеры или документы об этом?
Любая информация будет принята с благодарностью, даже просто толчок в правильном направлении. Я не после полного учебника, я хотел бы получить информацию более высокого уровня об этих функциях.
Я мог бы счастливо реализовать и , но я хотел бы некоторые информационные/описательные документы о threejs Skinning и рамке анимации, чтобы меня начали. Например, this не так много.
[EDIT]
Спасибо, @NishchitDhanani, эта страница является достаточно хорошим, но не говоря уже о нескольких анимаций или наложения скелетной анимации: http://chimera.labs.oreilly.com/books/1234000000802/ch05.html#animating_characters_with_skinning
Эта страница говорит несколько анимаций все еще актуальный вопрос, но не гораздо больше (обсуждается немного в комментариях): http://devmatrix.wordpress.com/2013/02/27/creating-skeletal-animation-in-blender-and-exporting-it-to-three-js/
текущие ответы ...
- Используйте много
THREE.SkinnedMesh
и все еще не уверены вTHREE.AnimationHandler
. - Не знаю. Возможно, есть способ изменить начальные/конечные ключевые кадры вручную в
THREE.Animation
. - Не реализовано AFAIK. Я мог бы попробовать создать пользовательский шейдер, который может принимать два
THREE.Animation
s и интерполировать между ними.
Кто-нибудь есть какие-либо рекомендации для кого-то, кто должен экспортировать сцены из MAYA 2013, нет никаких других вариантов. Помимо импорта его в разные программы –
@RyanBlevins Я использую collada для моего уровня mesh + lights и т. Д. Это просто скелетная анимация, которую я не мог получить. Загрузчик collada дает вам объект с '.scene'. Вы можете добавить все это или выбрать и выбрать из своих детей. – jozxyqk
Он должен иметь скелетную анимацию с кожей. –