URP——着色器和材质

Shaders and Materials

通用渲染管线使用了一种不同于Unity内置渲染管线的着色方法。因此,内置的照明和自定义照明着色器不能与URP一起工作。相反,URP有一套新的标准着色器。URP为最常见的用例场景提供了以下着色器:

升级建议:如果你升级你当前的项目到URP,你可以升级内置的着色器到新的。来自内置渲染管线的无光着色器仍然与URP一起工作。

对于SpeedTree着色器,当你重新导入它们时,Unity不会重新生成材质,除非你点击生成材质或应用&生成材质按钮。

注意:来自Unity内置的渲染管线的Unlit Shaders也可以在URP中工作。

Choosing a Shader

通过通用渲染管线,你可以通过物理基础着色器(PBS)和非物理基础渲染(PBR)获得实时照明。

对于PBS,使用Lit Shader灯光着色器)。您可以在所有平台上使用它。着色器的质量取决于平台,但在所有平台上保持物理的渲染。这为您提供了跨硬件的逼真图形。Unity标准着色器标准(高光设置)着色器都映射到URP中的Lit Shader(光照着色器)。有关着色器映射的列表,请参见着色器映射部分。

如果您的目标是功能较弱的设备,或者您的项目有较简单的阴影,使用Simple Lit shader,它是non-PBR。

如果你不需要实时照明,或者宁愿只使用烘焙照明和全局照明采样,选择Baked Lit Shader(烘焙照明着色器)。

如果你根本不需要在材质上照明,你可以选择无照明的着色器。

SRP Batcher compatibility

确保一个着色器是SRP批处理兼容:

  • 在一个名为UnityPerMaterial的CBUFFER中声明所有材质属性。
  • 在一个名为UnityPerDraw的CBUFFER中声明所有内置引擎属性,比如unity_ObjectToWorld或unity_WorldTransformParams。

有关SRP批处理程序的更多信息,请参见页面脚本渲染管道(SRP)批处理程序

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值