There is a code, but it does not work.

let camera, scene, render, container = document.createElement("div"); document.body.appendChild(container); camera = new THREE.PerspectiveCamera(60, window.innerWidth / window.innerHeight, 1, 10000); scene = new THREE.Scene(); camera.position.y = 0; camera.position.z = 600; var material = new THREE.MeshBasicMaterial(new THREE.MeshBasicMaterial({map: new THREE.TextureLoader().load('img/box.png'), side: THREE.DoubleSide})), cube = new THREE.Mesh(new THREE.CubeGeometry(200, 200, 200), material); scene.add(cube); render = new THREE.WebGLRenderer(); render.setSize(window.innerWidth, window.innerHeight); render.render(scene, camera); container.appendChild(render.domElement); 

Help to impose a texture on a cube, take the usual color, it worked, the cube was rendered, the image was 200x200 png format, everything is verified, it is in the folder that I specified. In the console, only this: THREE.WebGLRenderer 103

    1 answer 1

    Here is this fragment:

     var material = new THREE.MeshBasicMaterial(new THREE.MeshBasicMaterial({map: new THREE.TextureLoader().load('img/box.png'), side: THREE.DoubleSide})), cube = new THREE.Mesh(new THREE.CubeGeometry(200, 200, 200), material); 

    should look like this:

     var material = new THREE.MeshBasicMaterial({map: new THREE.TextureLoader().load('img/box.png'), side: THREE.DoubleSide}); cube = new THREE.Mesh(new THREE.BoxGeometry(200, 200, 200) /*или THREE.BoxBufferGeometry()*/, material);