使用 Graphics 设置(主菜单:Edit > Project Settings,然后选择 Graphics 类别)可应用全局图形设置。
本节提供有关以下属性组的文档说明:
此处可以定义一系列命令来精确控制场景的渲染方式(而不是使用 Unity 提供的默认渲染管线)。有关此功能的更多信息,请参阅可编程渲染管线 (Scriptable Render Pipeline) 包文档。
这些属性控制各种渲染设置。
属性 | 功能 | |
---|---|---|
Transparency Sort Mode | 定义按对象在特定轴上的距离渲染对象的顺序。Unity 中的渲染器按几个条件排序,例如图层编号或与摄像机的距离。这通常仅适用于 2D 开发;例如,按高度或沿 Y 轴来对精灵进行排序。 | |
Default | 根据摄像机模式将对象进行排序。 | |
Perspective | 根据透视图将对象进行排序。 | |
Orthographic | 根据正交视图将对象进行排序。 | |
Custom Axis | 根据使用 Transparency Sort Axis 定义的排序模式来排序对象。 | |
Transparency Sort Axis | 自定义__透明度排序模式 (Transparency Sort Mode)__。 |
Tier Settings 通过调整内置定义来对渲染和着色器编译进行特定于平台的调整。例如,可以使用此功能在高端 iOS 设备上启用级联阴影,但在低端设备上禁用级联阴影以便提高性能。层由 Rendering.GraphicsTier 定义。
您只能在内置渲染管线中更改 Graphics Tier 的设置。
属性 | 功能 | |
---|---|---|
Standard Shader Quality | 将标准着色器 (Standard Shader) 的质量设置为 High、Medium 或 Low。 | |
Reflection Probes Box Projection | 为反射探针上的反射 UV 贴图启用投影。 | |
Reflection Probes Blending | 启用反射探针上的混合。 | |
Detail Normal Map | 启用细节法线贴图 (Detail Normal Map) 采样(如果已分配)。 | |
Enable Semitransparent Shadows | 启用半透明阴影。 此选项可添加或删除 UNITY_USE_DITHER_MASK_FOR_ALPHABLENDED_SHADOWS 着色器编译器定义。 |
|
Enable Light Probe Proxy Volume | 允许渲染插值光照探针的 3D 网格。 | |
Cascaded Shadows | 启用级联阴影贴图。 此选项可添加或删除 UNITY_NO_SCREENSPACE_SHADOWS 着色器编译器定义。 |
|
Prefer 32 bit shadow maps | 目标设备是 PS4 或使用 DX11 或 DX12 的平台时,启用 32 位浮点阴影贴图。 大多数平台采用的是定点阴影贴图格式,无法进行调整。这些平台的格式多种多样,可以是 16 位、24 位或 32 位,也可以基于浮点数或整数。32 位阴影贴图提供的阴影质量要高于 16 位阴影贴图,但会在 GPU 上占用更多的内存和带宽。 注意:要使用 32 位阴影贴图,请确保深度缓冲区也设置为 32 位。 |
|
Use HDR | 为此层启用高动态范围渲染。 | |
HDR Mode | 选择为当前图形层启用 HDR 时用于 HDR 缓冲区的格式。默认情况下,此设置为 FP16。 | |
FP16 | 颜色渲染纹理格式,每通道 16 位浮点值。 | |
R11G11B10 | 颜色渲染纹理格式。R 和 G 通道为 11 位浮点值,B 通道为 10 位浮点值。 | |
Rendering Path | 选择 Unity 应如何渲染图形。不同的渲染路径会影响游戏的性能以及光照和阴影的计算方式。有些路径比其他路径更适合不同的平台和硬件。 使用正交投影时不支持_延迟 (Deferred)_ 渲染。如果摄像机的投影模式设置为正交模式,则会覆盖这些值,并且摄像机始终使用_前向 (Forward)_ 渲染。有关更多信息,请参阅渲染路径。 |
|
Forward | 传统的渲染路径。此渲染路径支持所有典型的 Unity 图形功能(法线贴图、每像素光照、阴影等)。但是,在默认设置下,仅少量最亮的光线才在每像素光照模式下渲染。其余光线是在对象顶点上或每个对象上计算的。 | |
Deferred | 延迟着色具有最大光照和阴影保真度,最适合有许多实时光源的情况。此渲染路径需要一定程度的硬件支持。 | |
Legacy Vertex Lit | 旧版顶点光照 (Legacy Vertex Lit) 是具有最低光照保真度且不支持实时阴影的渲染路径。它是_前向 (Forward)_ 渲染路径的一个子集。 | |
Legacy Deferred (light prepass) | 旧版延迟 (Light Prepass) 类似于延迟着色,只是采用不同的技术并进行不同的折中。不支持 Unity 5 基于物理的标准着色器。 | |
Realtime Global Illumination CPU Usage | 选择在运行时为最终光照计算分配多少 CPU 使用率。增加此值会加快系统对光照更改的反应速度,成本是使用更多 CPU 时间。 注意:某些平台允许工作线程占用所有 CPU,而某些平台强制采用最大值。例如,Xbox One 和 PS4 最多允许 4 个 CPU 核心。对于 Android 设备,如果是 bigLittle 架构,则仅使用小 CPU;否则最大值为 CPU 总数减去一。 |
|
Low | 将可用 CPU 线程的 25% 用作工作线程。 | |
Medium | 将可用 CPU 线程的 50% 用作工作线程。 | |
High | 将可用 CPU 线程的 75% 用作工作线程。 | |
Unlimited | 将可用 CPU 线程的 100% 用作工作线程。 |
使用这些设置可指定要用于每个列出的内置功能的着色器。
渲染路径 | 要使用的着色器 |
---|---|
Deferred | 与延迟着色结合使用。 |
Deferred Reflection | 与反射探针及延迟光照结合使用。 |
Screen Space shadows | 与 PC/游戏主机平台上的方向光的级联阴影贴图结合使用。 |
Legacy deferred | 与旧版延迟光照结合使用。 |
Motion vectors | 用于基于对象的运动矢量计算。 |
Lens Flare | 与镜头光晕结合使用。 |
Light Halo | 与光环结合使用。 |
对于每个功能,可以选择要使用的着色器类型:
选择 Custom shader 时,在特征属性下方会出现 Shader 参考属性,您可以在此处设置对需要使用的着色器的引用。
指定始终与项目一起存储(即使场景中没有任何对象实际使用这些着色器)的着色器列表。应将流式 AssetBundles 使用的着色器添加到此列表中来确保可以访问这些着色器,这一点非常重要。
要将着色器添加到此列表,请增大 Size 属性中的值。
要删除列表中的最后一个着色器,请减小 Size 属性的值。
要删除不是列表中最后一个着色器的着色器,可将值设置为 None。
通过剥离某些着色器,降低构建数据大小并缩短加载时间。
默认情况下,Unity 会查看场景和光照贴图设置来确定未使用的雾效和光照贴图模式,并跳过对应的着色器变体。
但是,如果要构建 Asset Bundles,则可选择特定模式,以确保包含要使用的模式。
默认情况下,__Lightmap modes__ 属性默认为 __Automatic__,这意味着由 Unity 决定跳过哪些着色器变体。
若要自己指定使用的模式,请将此属性更改为 Custom 并启用或禁用以下光照贴图模式:
默认情况下,__Fog Modes__ 属性默认为 __Automatic__,这意味着由 Unity 决定跳过哪些着色器变体。
若要自己指定使用的模式,请将此属性更改为 Custom 并启用或禁用以下雾模式:
如果未在场景中的任何游戏对象上启用 GPU 实例化,Unity 会剥离实例化变体。可以使用 Instancing Variants 属性覆盖默认的剥离行为。
值 | 描述 |
---|---|
Strip Unused__(默认值)| Unity 构建项目时,仅当至少有一个引用着色器的材质启用了 Enable instancing__ 复选框的情况下,才会包含实例化着色器变体。Unity 会剥离禁用了 Enable instancing 的材质未引用的着色器。 | |
Strip All | 剥离所有实例化着色器变体,即使它们正在被使用。 |
Keep All | 保留所有实例化着色器变体,即使它们未被使用。 |
属性 | 功能 |
---|---|
Preloaded shaders | 在应用程序启动时预热的着色器变体集合。有关预热的信息,包括有关图形 API 支持的重要信息,请参阅着色器加载:预热着色器变体 。 |
您的应用程序在运行时使用的着色器变体的 Unity 编辑器。您可以使用此信息来构建着色器变体集合。
控件 | 功能 |
---|---|
Create asset | 使用当前跟踪的着色器变体创建新的着色器变体集合资源。 |
Clear | 清除跟踪的着色器变体。 |