SecondScene创建物体阴影添加阴影需要设置receiveShadow属性让地面接受阴影。设置几何体的投射阴影属性。castShadow为可投射光源设置投射阴影属性。=newTHREE.Scene();//创建地面constplaneGeometry=newTHREE.PlaneGeometry(300,300,30);constplaneMaterial=newTHREE.MeshPhonegMaterial({color:0xeeeeee,});constplane=newTHREE.Mesh(planeGeometry,planeMaterial);plane.rotation.x=0.5*Math.PI;//地面接收阴影plane.receiveShadow=true;scene.add(plane);//创建几何constboxGeometry=newTHREE.BoxGeometry(20,20,20);constboxMaterial=newTHREE.MeshPhongMaterial({color:0x277234,});constbox=newTHREE.Mesh(boxGeometry,boxMaterial);//几何投射阴影box.castShadow=true;box.position.y=10;scene.add(box);//创建点光源constpoint=newTHREE.PointLight(0xaaaaaa);point.position.set(100,100,20);//设置点光源投射阴影point.castShadow=true;scene.add(point);//创建环境光constambient=newTHREE.AmbientLight(0xcccccc);ambient.box;scene.add(ambient);//创建相机变量camera=newTHREE.OrthographicCamera("Noparameterset");camera.position.set(100,100,200);camera.lookAt(scene.position);//创建渲染器对象varrenderer=newTHREE.WebGLRenderer();renderer.setSize(window.document.body.clientWidth,window.document.body.clientHeight);renderer.setClearColor(0xb9d3ff,1);//启用阴影renderer.shadowMap.enabled=true;document.body.appendChild(renderer.dom元素);renderer.render(场景,相机);影响
