为什么我的循环里不是每个立方体都投射阴影?
我使用方向光源,所有的立方体都应该投射阴影。但是出现了问题,只有前5列立方体才有阴影。
let dirLight = new THREE.DirectionalLight(0xFFFFFF, 1.5);
dirLight.position.set(300, -300, 400);
dirLight.castShadow = true;
scene.add(dirLight);
dirLight.shadow.mapSize.width = 512;
dirLight.shadow.mapSize.height = 512;
dirLight.shadow.camera.near = 0.5;
dirLight.shadow.camera.far = 1000;
let cubeGeometry = new THREE.BoxGeometry(1, 3, 1);
let cubeMaterial = new THREE.MeshLambertMaterial({
color: 0xf54242
});
function drawCubes() {
for (let c = 0; c < 25; c++) {
for (let r = 0; r < 10; r++) {
for (let t = 0; t < 2; t++) {
let cube = new THREE.Mesh(cubeGeometry, cubeMaterial);
cube.position.x = c * 1.3;
cube.position.y = r * 3.02;
cube.position.z = t * 1.01;
cube.castShadow = true;
cube.receiveShadow = true;
scene.add(cube);
}
}
}
}
drawCubes();