var avatar = new THREE.Object3D(); scene.add(avatar); var shape = new THREE.CubeGeometry(100, 150, 60); var cover = new THREE.MeshNormalMaterial(flat); var body = new THREE.Mesh(shape, cover); avatar.add(body); var headShape = new THREE.CubeGeometry(120, 100, 120); var head = new THREE.Mesh(headShape, cover); head.position.set(0, 125, 0); avatar.add(head); // add left arm var lac = new THREE.Object3D(); lac.position.set(-75, 65, 0); avatar.add(lac); var armShape = new THREE.CubeGeometry(50, 150, 50); var leftArm = new THREE.Mesh(armShape, cover); lac.add(leftArm); leftArm.position.set(0, -65, 0); // add right arm var rac = new THREE.Object3D(); rac.position.set(75, 65, 0); avatar.add(rac); var rightArm = new THREE.Mesh(armShape, cover); rac.add(rightArm); rightArm.position.set(0, -65, 0); // add left leg var llc = new THREE.Object3D(); llc.position.set(-25, -85, 0); avatar.add(llc); var LegShape = new THREE.CubeGeometry(50, 150, 50); var leftLeg = new THREE.Mesh(LegShape, cover); llc.add(leftLeg); leftLeg.position.set(0, -65, 0); // add right leg var rlc = new THREE.Object3D(); rlc.position.set(25, -85, 0); avatar.add(rlc); var rightLeg = new THREE.Mesh(LegShape, cover); rlc.add(rightLeg); rightLeg.position.set(0, -65, 0); lac.rotation.set(-1, 0, 0); rac.rotation.set(1, 0, 0); llc.rotation.set(1, 0, 0); rlc.rotation.set(-1, 0, 0); function animate(){ requestAnimationFrame(animate); //avatar.rotation.y = avatar.rotation.y + 0.05; //head.rotation.y = head.rotation.y - 1; //lac.rotation.x = lac.rotation.x +0.5; renderer.render(scene, camera); } animate();