Unity URP项目中光照对精灵及3D物体失效问题求助
材质Shader适配检查
3D物体必须使用URP兼容的Shader,比如Universal Render Pipeline/Lit;2D精灵要使用Universal Render Pipeline/2D/Sprite-Lit-Default这类URP 2D专属Shader,Built-in管线的Shader在URP环境下不支持光照计算。URP渲染管线配置验证
进入Project Settings > Graphics,确认Scriptable Render Pipeline Settings已指定项目的URP Asset。打开该URP Asset,检查Renderers列表:3D场景需包含Universal Renderer,2D精灵场景要添加2D Renderer,同时确保场景相机的Renderer选项选择了对应配置。光源参数排查
把光源的Type设置为Realtime(若未开启光照烘焙),检查Intensity数值是否大于0,同时确认光源的Layer Mask包含物体所在的层级,避免光源被过滤。精灵渲染器专属设置
若使用2D精灵,需在URP Asset中启用2D Renderer,并确保精灵材质用的是URP 2D光照Shader。另外检查精灵渲染器的Lighting Layer是否在2D渲染器的Lighting Layer Mask覆盖范围内,必要时开启Receive Shadows选项。物体渲染组件检查
3D物体的Mesh Renderer需勾选Receive Shadows和Cast Shadows(按需开启);精灵渲染器同样要确认光照相关选项未被禁用,比如Lighting Layer设置正确。全局光照设置确认
打开URP Asset的Global Illumination面板,若使用烘焙GI需完成光照烘焙流程;若用实时GI,确保Realtime Global Illumination已开启,且光源、物体的GI设置符合要求。
内容的提问来源于stack exchange,提问作者Navanoid

