2016-10-20 2 views
3

최근에 three.js에서 Blender와 Collada Loader로 실험을 해봤습니다. 블렌더 씬에서 나는 세 개의 객체를 가지고 있지만, 물론 오직 하나의 씬 객체 만 로더로 3 개의 .js로 관리 할 수 ​​있습니다. 모든 것이 잘 작동하고, 블렌더에서 가져온 머티리얼까지도 가능 합니다만, 장면 오브젝트에서 여러 오브젝트를 가져 와서 three.js 메쉬로 변환 한 다음 여러 .dae 파일로 변환하지 않고 개별적으로 애니메이션을 만들 수 있는지 궁금합니다. . 유용 경우Collada loader : 장면 개체에서 여러 메쉬를 가져올 수 있습니까?

여기에 내 코드를 게시 : 당신의 도움에 대한

var loader = new THREE.ColladaLoader(); 
    loader.options.convertUpAxis = true; 
    loader.load('scene.dae', function (collada) {  
     dae = collada.scene; 
     dae.position.set(0, 0, 0); 
     dae.scale.set(50, 50, 50); 
     scene.add(dae);  
    }); 

감사합니다!

+0

그건 청초한 ... 난 방금 트위터에 @ mrdoob 자신에게 물었다. 우리가 대답을하자마자 업데이트 할거야! – rafaelcastrocouto

+0

며칠 전에 three.js Github 페이지의 issue 섹션에 게시했습니다 ...하지만 mrddoob이 직접 닫았으므로 여기 xD –

+0

https의 예제에서'collada.scene.traverse'를 확인 했습니까? : //github.com/mrdoob/three.js/blob/master/examples/webgl_loader_collada_skinning.html – rafaelcastrocouto

답변

1

console.log(collada.scene)에 자식 배열이있는 것을 확인할 수 있습니다. 이것은 모든 메시가 사는 곳입니다.

예. 당신은 이렇게 첫 번째에 액세스 할 수 있습니다 :

collada.scene.children[0].children[0]; 
관련 문제