docs.unity3d.com
    显示 / 隐藏目录

    着色器和材质

    通用渲染管线 (Universal Render Pipeline) 使用与 Unity 内置渲染管线不同的着色方法。因此,内置和自定义的光照着色器不适用于 URP。相反,URP 有一组新的标准着色器。URP 为最常见的用例场景提供以下着色器:

    • 复杂光照 (Complex Lit)
    • 光照 (Lit)
    • 简单光照 (Simple Lit)
    • 烘焙光照 (Baked Lit)
    • 无光照 (Unlit)
    • 地形光照 (Terrain Lit)
    • 粒子光照 (Particles Lit)
    • 粒子简单光照 (Particles Simple Lit)
    • 粒子无光照 (Particles Unlit)
    • SpeedTree
    • 贴花 (Decal)
    • Autodesk 交互 (Autodesk Interactive)
    • Autodesk 交互透明 (Autodesk Interactive Transparent)
    • Autodesk 交互遮罩 (Autodesk Interactive Masked)

    升级建议:如果将当前项目升级到 URP,可以将内置着色器升级到新的着色器。内置渲染管线中的无光照着色器仍可用于 URP。

    对于 SpeedTree 着色器,重新导入这些着色器时,除非单击 Generate Materials 或 Apply & Generate Materials 按钮,否则 Unity 不会重新生成材质。

    注意:Unity 内置渲染管线中的无光照着色器可用于 URP。

    选择着色器

    借助通用渲染管线,可以使用基于物理的着色器 (PBS) 和非基于物理的渲染 (PBR) 实现实时光照。

    对于 PBS,请使用光照着色器。此着色器可用于所有平台。着色器质量会根据平台进行扩展,但会在所有平台上保持基于物理的渲染。因此可以提供跨硬件的逼真图形。Unity 标准着色器和标准(镜面反射设置)着色器都映射到 URP 中的光照着色器。如需了解着色器映射列表,请参阅着色器映射一节。

    如果目标设备是性能较低的设备,或者项目具有更简单的着色,请使用非 PBR 的简单光照着色器。

    如果不需要实时光照,或者只想使用烘焙光照和采样全局光照,请选择烘焙光照着色器。

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

    SRP Batcher 兼容性

    要确保着色器与 SRP Batcher 兼容,请执行以下操作:

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

    有关 SRP Batcher 的更多信息,请参阅可编程渲染管线 SRP Batcher 页面。

    返回到顶部
    Copyright © 2023 Unity Technologies — 商标和使用条款
    • 法律条款
    • 隐私政策
    • Cookie
    • 不要出售或分享我的个人信息
    • Your Privacy Choices (Cookie Settings)