개발 · 컴퓨터공학 / / 2022. 9. 2. 13:36

three.js mesh를 하나의 그룹으로 만들기

728x90
반응형
const group1 = new THREE.Group();
const box1 = new THREE.Mesh(geometry, material);

const group2 = new THREE.Group(); // THREE.Object3D()
const box2 = box1.clone();
box2.scale.set(0.3, 0.3, 0.3);
group2.position.x = 2;

const group3 = new THREE.Group(); // THREE.Object3D()
const box3 = box2.clone();
box3.scale.set(0.15, 0.15, 0.15);
box3.position.x = 0.5;

group3.add(box3);
group2.add(box2, group3);
group1.add(box1, group2);
scene.add(group1);

three.js의 Group() 또는 Object3D()을 통해 group 객체를 생성할 수 있다. 

이 객체에 다른 mesh를 추가하면 하나의 오브젝트인 마냥 그룹으로 행동하게 할 수 있다. 

참고로 mesh를 clone()을 통하여 객체를 복제해서 생성할 수도 있다. 

위 코드처럼 각 group에 box를 추가하고, 상위 group에 하위 group객체를 add해준 후 group1의 transform을 조정해보면 한 번에 그룹지어 변형된다.

728x90
반응형

'개발 · 컴퓨터공학' 카테고리의 다른 글

three.js Geometry  (0) 2022.09.04
three.js OrbitControls  (0) 2022.09.03
three.js transform  (0) 2022.09.01
three.js GUI 그리기  (0) 2022.08.31
three.js 프레임 확인하기  (0) 2022.08.30
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유