2014-12-30 2 views
2

JSON 모델은 Blender에서 제작되었으며 애니메이션도 뼈를 사용하여 블렌더에서 제작되었습니다. 그러나 three.js에서 애니메이션을 실행하려고하면 나머지 장면은 물고기를 제외하고 표시됩니다. 나는 대답을 찾았지만 내 문제를 해결할만한 것을 찾지 못했습니다. 나는 Jos Dirksen의 'Learning three.js'라는 책을 읽었습니다. 또한 내가에서 루프를 렌더링JSON 모델의 애니메이션 THREE.js

var loader=new THREE.JSONLoader(); 
var mesh; 
loader.load('fish_anim1.json', function (model, mat){ 
    mat[0] = new THREE.MeshLambertMaterial({color: 0x9ABF15, skinning: true}); 
    mesh = new THREE.SkinnedMesh(model, mat[0]); 

    animation = new THREE.Animation(model, model.animations); 

    mesh.position.set(0,5,0); 
    mesh.scale.x = 3; 
    mesh.scale.y = 3; 
    mesh.scale.z = 4; 
    mesh.rotation.y=Math.PI; 
    mesh.name='fish'+fish_count; 
    scene.add(mesh); 

    animation.play(); 
}); 

three.js를에서 초보자 오전, 난 당신이, 두 번째로 애니메이션을 모두 가까이 통과하지 못한되는 애니메이션을

THREE.AnimationHandler.update(delta); 

답변

1

를 업데이트하려면이 줄을 추가 THREE.Animation의 매개 변수를 사용하면 하나의 애니메이션 만 전달하면됩니다.

animation = new THREE.Animation(mesh, model.animations[0]); // EDIT: First parameter is the SKinnedMesh not geometry. 
+0

시도해 보았습니다. 그래도 작동이 안되는. –

+0

나는 대답을 편집했다, 나는 나의 메쉬의 var 이름으로 "model"을 사용하고, 나를 통해 그것은 당신을 기하학을 위해 사용하고있다. – Hobbes

관련 문제