1
我有陰影在three.js工作的麻煩。在下面的圖片中,您可以看到聚光燈在具有平面幾何圖形的物體上投射陰影。在靠近飛機的聚光燈和牆壁的平面幾何之間沒有任何物體。THREE.js聚光燈鑄造陰影與近平面和接收器之間沒有任何物體
什麼會導致此類行爲?
的光被配置成這樣:
var spotLight = new THREE.SpotLight(0xFFFFFF, 1);
spotLight.position.set(0, -20, 100);
spotLight.target.position.set(0,0,0);
spotLight.shadowDarkness = 0.5;
spotLight.shadowCameraVisible = true;
spotLight.castShadow = true;
spotLight.shadowMapWidth = 1024;
spotLight.shadowMapHeight = 1024;
spotLight.shadowCameraNear = 10;
spotLight.shadowCameraFar = 200;
spotLight.shadowCameraFov = 10;
spotLight.shadowBias = 0.1;
scene.add(spotLight);
矩形網格是BufferGeometries
從PlaneGeometries
轉換與PNG UV映射圖像與.receiveShadow
集到true
質感。
THREE.js版本r71。
任何幫助將非常感激。
感謝@ Ale_32,改變'.shadowBias'的值將自身陰影向上或向下移動一半,不會使它消失......我讀過它與'.shadowCameraFov'值有關太小了......所以,這意味着如果沒有這種自我陰影神器,你就不能創造出一盞小燈。 – user1398498
在這種情況下,使用'.shadowBias'的小_negative_值來減輕自我陰影僞影。 – WestLangley
您也可以嘗試-0.05作爲值...或者,您可以提高陰影貼圖的z精度,減小光錐的大小 –