Estoy usando algo de lógica para agregar cuadros a mi escena, en función de la cantidad de elementos en altura, ancho y profundidad, y eso funciona bien cuando todos están perfectamente cuadrados.
El problema viene si quiero usar una forma rectangular diferente:
Soy bastante principiante en esto. ¿Cómo puedo corregirlo?
private addCubes() { // geometry const geometry = new THREE.BoxGeometry(1,4,4); const edgesGeometry = new THREE.EdgesGeometry(geometry); // material const material = new THREE.MeshBasicMaterial({ color: 0x0d6efd, }); const edgesMaterial = new THREE.LineBasicMaterial({ color: 0x000000 }); // positions for (let x = 0; x < 2; x++) { for (let y = 0; y < 1; y++) { for (let z = 0; z < 2; z++) { // mesh const mesh = new THREE.Mesh(geometry, material); mesh.scale.multiplyScalar(0.9); mesh.position.set(x, y, z); this.scene.add(mesh); const lines = new THREE.LineSegments(edgesGeometry, edgesMaterial); mesh.add(lines); } } } }Cambie mesh.position.set(x, y, z) a mesh.position.set(x, y, z * 4) . Sus cuadros tienen 4 unidades de profundidad en la dirección z, pero solo está moviendo el segundo rango de cuadros en 1 unidad, por lo que se superponen.