Babylon.js 第17章 阴影

本文详细介绍了Babylon.js中阴影的创建和优化,包括模糊质量设置、关闭指数阴影贴图、PFC阴影、PCSS接触硬化阴影、透明物体投射阴影、使用偏差、边缘衰减、冻结阴影以及权重清理等关键概念和技术。
摘要由CSDN通过智能技术生成

一、创建阴影

    //参数:阴影贴图的大小和光源
    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)都能创建阴影。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值