0

I need to manage position of group of objects as one item.

I have:

tankMesh1 = new THREE.Mesh(geometry, material);
tankMesh2 = new THREE.Mesh(geometry, material);
scene.add(tankMesh1);
scene.add(tankMesh2);

tankMesh2.position = tankMesh2.position + offset * cos ( angle )

I need:

tankMeshBig = new THREE.Mesh(tankMesh1 , tankMesh2 );

Example: http://jsfiddle.net/ksRyQ/2287/

FreeVice
  • 2,567
  • 6
  • 21
  • 28
  • possible duplicate of [three.js - mesh group example? (THREE.Object3D() advanced)](http://stackoverflow.com/questions/7985805/three-js-mesh-group-example-three-object3d-advanced) – Mike 'Pomax' Kamermans Sep 16 '13 at 14:33
  • See `THREE.GeometryUtils.merge()` in [docs](http://threejs.org/docs/#Reference/Extras/GeometryUtils). – WestLangley Sep 16 '13 at 14:46

1 Answers1

2

You can use a new THREE.Object3D():

js:

var group=new THREE.Object3D();

tankMesh1 = new THREE.Mesh(geometry, material);
group.add(tankMesh1);

geometry = new THREE.CubeGeometry(3, 2, 5);
tankMesh2 = new THREE.Mesh(geometry, material);
tankMesh2.position.y = 3;
group.add(tankMesh2);

group.rotation.y = 3.141/3;

scene.add(group);

http://jsfiddle.net/zYLSC/

simonzack
  • 19,729
  • 13
  • 73
  • 118
  • If you are going to take this approach, then in your fiddle, you should be translating/rotating the group, not the meshes themselves. – WestLangley Sep 16 '13 at 14:47