环境
unity : 2020.3.37f1
pipeline : BRP
修复前
修复后
原因
unity 烘焙的时候,会对物件模型的表面法线的各个角度发射射线做采样
如果某个模型是只有一个单薄的片面,那么默认发射的射线碰撞检测到背面,就相当于碰撞到一个完全吸收光线的材质,不会有再次反弹,所以没有 全局光照的间接光照来补光,将会黑黑的
因此需要告诉 unity 烘焙系统,碰撞到这类材质时,无论他正背面都启用走材质表面反弹计算
主要调整的材质开关:Double Side Global Illumination
Double Side Global Illumination API 说明,就是是否给这个材质开启双面全局光照的设置
// Material.cs
//
// 摘要:
// Gets and sets whether the Double Sided Global Illumination setting is enabled
// for this material.
public extern bool doubleSidedGI
{
[MethodImpl(MethodImplOptions.InternalCall)]
get;
[MethodImpl(MethodImplOptions.InternalCall)]
set;
}
对应 Material 属性文章来源:https://www.toymoban.com/news/detail-517398.html
Material.doubleSizeGI = true;
如果自己自定义了 Shader GUI 记得将 这个字段绘制出来文章来源地址https://www.toymoban.com/news/detail-517398.html
materialEditor.DoubleSidedGIField();
到了这里,关于Unity - BakingSystem - 烘焙 - 阴影黑块的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!