一、创建阴影
//参数:阴影贴图的大小和光源
let shadow=new BABYLON.ShadowGenerator(1024,light)
//定义要渲染的网格,添加阴影投射
//shadow.addShadowCaster(sphere)
shadow.getShadowMap().renderList.push(sphere)
//地面接收阴影
ground.receiveShadows=true
//1.泊松抽样.禁用方差阴影贴图,此滤镜使用泊松采样来柔化阴影。结果更好,但速度更慢。
shadow.usePoissonSampling=true
/*
*2.指数阴影贴图
*默认情况下为true,因为减少阴影的锯齿很有用。但是,如果您想减少计算时间
*请随时将其关闭。您还可以通过更改shadowGenerator.depthScale.
*默认情况下,该值为 50.0,但如果您的世界的深度比例(MinZ 和 MaxZ 之间的距离
*很小,您可能需要更改它。
*/
shadow.useExponentialShadowMap = true
/*
*3.模糊指数阴影贴图
*这是更好的柔化阴影滤镜,但也更慢。它使用模糊指数阴影贴图。
*/
shadow.useBlurExponentialShadowMap = true ;
shadow.useKernelBlur = true;
shadow.blurKernel = 20;
shadow.addShadowCaster(sphere)和shadow.getShadowMap().renderList.push(sphere)都能创建阴影。