我試圖在three.js中使用內置陰影貼圖插件。最初的困難後,我有或多或少的可接受的形象與最後一個小故障。那個影子出現在頂部的一些(所有?)表面上,正常的0,0,1。下面是同一個模型的圖片。出現在錯誤位置的陰影貼圖
three.js所
Preview.app(蘋果機)
,並用於設置陰影代碼:
var shadowLight = new THREE.DirectionalLight(0xFFFFFF);
shadowLight.position.x = cx + dmax/2;
shadowLight.position.y = cy - dmax/2;
shadowLight.position.z = dmax*1.5;
shadowLight.lookAt(new THREE.Vector3(cx, cy, 0));
shadowLight.target.position.set(cx, cy, 0);
shadowLight.castShadow = true;
shadowLight.onlyShadow = true;
shadowLight.shadowCameraNear = dmax;
shadowLight.shadowCameraFar = dmax*2;
shadowLight.shadowCameraLeft = -dmax/2;
shadowLight.shadowCameraRight = dmax/2;
shadowLight.shadowCameraBottom = -dmax/2;
shadowLight.shadowCameraTop = dmax/2;
shadowLight.shadowBias = 0.005;
shadowLight.shadowDarkness = 0.3;
shadowLight.shadowMapWidth = 2048;
shadowLight.shadowMapHeight = 2048;
// shadowLight.shadowCameraVisible = true;
scene.add(shadowLight);
UPDATE:而一個活生生的例子了這裏:http://jsbin.com/okobum/1/edit
你能提供一個現場(和簡單)的例子嗎? – WestLangley
我剛做了一個小演示,儘管降低了陰影分辨率,因爲場景包含單個模型和一個用於比較的多維數據集。現在我該如何讓這看起來很漂亮? :) – skrat