Unity场景灯光穿透物体问题求助:暗场景灯光穿墙未解决
URP场景灯光穿透物体(墙体)问题排查方案
问题背景
暗场景中添加灯光后,灯光穿透物体(含墙体),不符合预期。已尝试:将物体设为Static、URP全局Bias设0,均未解决。
相关截图
- 灯光在物体旁:

- 灯光穿透物体:

解决步骤
1. 基础渲染/阴影开关检查
- 遮挡物(墙体等)的Mesh Renderer必须开启Cast Shadows(设为On/Soft Shadows),同时开启Receive Shadows;实时光源的Shadows面板要开启阴影(类型设为Soft/Hard Shadow)。
- 烘焙光源场景:确认遮挡物标记了Contribute Global Illumination,且Mixed Lighting模式配置正确。
2. 精细化调整阴影偏移参数
- 全局设置:打开URP Asset → Quality → Shadows,调整Shadow Near Plane Offset(建议从0.05开始递增测试),避免Near Plane过近导致的穿透。
- 单灯光设置:在灯光组件的Shadows面板,调整Bias(0.1-0.5区间)和Normal Bias(解决斜面穿透,0.1起步),不要直接设为0。
3. 物体Mesh与层级校验
- 检查遮挡物Mesh是否闭合、法线方向正确(翻转的面会让灯光“看穿”物体),可通过Mesh工具修复法线。
- 灯光的Culling Mask必须包含遮挡物所在Layer,排除误操作导致的Layer不匹配。
4. URP渲染配置排查
- Forward渲染路径下,确保灯光Render Mode设为Auto/Important,防止被降级为无阴影模式。
- 提升Shadow Resolution,过低的分辨率会导致阴影精度不足出现穿透;若使用软阴影,确保URP Asset中已开启Soft Shadows。
5. 排除特殊干扰
- 临时关闭物体的Lightmap Static,部分场景下静态标记与实时光影存在兼容问题。
- 禁用第三方特效/插件(如体积雾、后处理),测试是否是插件干扰了灯光渲染逻辑。
内容的提问来源于stack exchange,提问作者Seokku
相关产品推荐
相关产品推荐

