关于unity中URP渲染灯光太亮的问题

墙壁很亮

上图为urp默认的灯光渲染,靠近物体时光圈非常的亮,非常不自然,而且光照范围也很小,其他地方很暗。而且不管参数如何调整都是差不多这种效果


修改后

修改目录URP包体下-ShaderLibrary-Lighting.hlsl里找到如下图58行,修改成图中如此即可。或者可以自行修改成自己理解的衰减公式。


修改58行

修改后保存即可。

**但是有一个问题就是,package manager在每次打开项目时会重新加载你所选择的包体,所以上面的修改会被重置回默认的。

加载的包体列表在

打开后可以发现所有的包体清单。

每次打开项目都会重新加载manifest.json中所列举的包,并且安装到如下的目录中。

我们需要做的就是将URP的包体修改后拉到本地目录中,然后由manifest.json读取。

具体做法:在修改完Lighting.hlsl后复制后缀为.universal的文件夹到根目录下(urp由两个文件夹组成,一个为.core一个为.universal,看清楚了)


我将文件名修改成了如图

然后在manifest.json中读取的位置如此对应上即可。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。