我正在尝试将three.js的纹理添加到MeshPhongMaterial中,但是不知何故,我只得到了一个黑色的盒子。我已经卡在这个问题上一段时间了,似乎无法解决它。
//Creates the cube and lighting effect
function initCube() {
var loader = new THREE.TextureLoader();
var texture1 = loader.load("brick.jpg");
cubeTexture = loader.load
cube = new THREE.Mesh(new THREE.BoxGeometry(3,3,3), new
THREE.MeshPhongMaterial({color:0xffffff, map:texture1}));
scene.add(cube);
cube.scale.set(0.5, 0.5, 0.5);
cube.position.x = 0;
//Adds light
cubeLight = new THREE.PointLight(0xFF0000 , 30, 1);
cube.add(cubeLight);
cubeLight.position.set(-0.5,-1,0);
scene.add(cubeLight);
cubeLight.power =100;
map.cubeLight = {
light: cubeLight,
added: true
}
//Adds second light
cubeLight2 = new THREE.PointLight(0x6600ff , 1, 1);
cube.add(cubeLight2);
cubeLight2.position.set(0,1,0);
scene.add(cubeLight2);
cubeLight2.power =100;
map.cubeLight2 = {
light: cubeLight2,
added: true
}
}