在threejs中,阴影可以定义为“在渲染器支持的情况下,有一个可以产生阴影的光,照射在若干个可以产生阴影的物体上,并在某个可以接受阴影的物体上产生阴影”。所以,要产生阴影,渲染器、光、物体,接受光线的物体,四者缺一不可。
渲染器需要设置阴影渲染
renderer.shadowMapEnabled = true;
光线要设为能产生阴影
//表示这个光是可以产生阴影的
spotLight.castShadow = true;
物体要设为能产生阴影
//表示这个物体是可以产生阴影的
sphere.castShadow = true;
要有接受阴影的物体
//表示这个物体是可以接受(显示)阴影的
plane.receiveShadow =