Я экспортировал модель (с несколькими анимациями) из 3ds max и в конечном итоге перевел ее в JSON. Однако все мои анимации разбиты в одну анимацию. Есть ли способ в threejs воспроизводить только определенный диапазон кадров, или мне нужно сделать экспорт из 3ds max для каждой отдельной анимации? Спасибо, Дэвид
воспроизводить отдельные анимации в threejs
comment
Ударяться. Тоже ищу решение :(
- person Andrew Dunai   schedule 19.03.2015
Ответы (1)
есть два типа анимации. Я использую морфинг сетки при экспорте из Blender. Мой полученный json имеет эту строку:
"morphTargets" : [{ "name": "animation_000000", "vertices": [...
затем я загружаю его с помощью MorphAnimMesh:
mesh = new THREE.MorphAnimMesh( geometry, new THREE.MeshFaceMaterial( materials ) );
после загрузки я устанавливаю анимацию бездействия по умолчанию:
mesh.duration = 4000; //4 seconds whole animation?
mesh.setFrameRange(1,50);
затем в каком-то событии я просто меняю диапазон анимации следующим образом:
mesh.setFrameRange(51,80);
если вы используете анимацию костей и скинов, ваша модель json заканчивается линиями
"animations" : [...
"bones": [...
я не использовал это, поэтому попробуйте этот учебник: http://code.tutsplus.com/tutorials/webgl-with-threejs-models-and-animation--net-35993
также это аналогичный вопрос: Как мне обрабатывать анимированные модели в Three .js?
person
pera
schedule
23.03.2015