翻译Unity中文版的初衷是因为官方提供的中文版存在缺陷,而且翻译的不全。现在基于Unity2023.2版本对官方文档进行翻译。
Graphics 🔗
Graphics设置(主菜单:Edit > Project Settings,然后选择Graphics类别)用于应用全局的图形设置。
本部分提供了以下属性组的文档:
- 脚本化渲染管线设置
- 摄像机设置
- 分层设置
- 内置着色器设置
- 始终包含的着色器
- 着色器剥离
- 着色器加载
- 裁剪设置
脚本化渲染管线设置 🔗
允许您设置 Unity 在渲染项目时使用的默认渲染管线。要基于脚本化渲染管线设置渲染一个管线,请在此处分配所需的渲染管线资源。
有关更多信息,请参阅如何获取、设置和配置活动的渲染管线。
摄像机设置 🔗
这些属性控制各种渲染设置。
属性 | 功能 | |
---|---|---|
Transparency Sort Mode | 定义按照特定轴向对象的距离对其进行渲染的顺序。在 Unity 中,渲染器按照多个标准对其进行排序,例如它们的图层编号或它们与摄像机的距离。这通常只在 2D 开发中有用:例如根据高度或 Y 轴对 Sprites 进行排序。 | |
Default | 根据摄像机模式对对象进行排序。 | |
Perspective | 根据透视视图对对象进行排序。 | |
Orthographic | 根据正交视图对对象进行排序。 | |
Custom Axis | 使用定义的Transparency Sort Axis的排序模式对对象进行排序。 | |
Transparency Sort Axis | 定义自定义的Transparency Sort Mode。 |
层级设置 🔗
在通用渲染管线中,你可以使用层级设置来更改不同类型硬件的渲染和着色器编译设置。详情请参阅 Graphics tiers。
属性 | 功能 | |
---|---|---|
Standard Shader Quality | 将标准着色器的质量设置为高、中、低。 | |
Reflection Probes Box Projection | 在反射探头上启用反射 UV 映射投影。 | |
Reflection Probes Blending | 启用反射探头上的混合。 | |
Detail Normal Map | 启用细节法线贴图的采样(如果有分配)。 | |
Enable Semitransparent Shadows | 启用半透明阴影。这将添加或移除 UNITY_USE_DITHER_MASK_FOR_ALPHABLENDED_SHADOWS 着色器编译定义。 | |
Enable Light Probe Proxy Volume | 启用渲染插值的光探头体积。 | |
Cascaded Shadows | 启用使用级联阴影贴图。这将添加或移除 UNITY_NO_SCREENSPACE_SHADOWS 着色器编译定义。 | |
Prefer 32 bit shadow maps | 在针对使用 DX11 或 DX12 的平台时启用 32 位浮点深度图。大多数平台具有固定的阴影贴图格式,无法调整。这些格式会有所不同,可以是 16 位、24 位或 32 位,也可以是浮点数或整数格式。32 位的阴影贴图比 16 位更高质量,但在 GPU 上使用的内存和带宽更多。** 注意:** 要使用 32 位阴影贴图,请确保深度缓冲区也设置为 32 位。 | |
Use HDR | 启用此层级的高动态范围渲染。 | |
HDR Mode | 在启用HDR时,选择要在当前层级的 HDR 缓冲区中使用的格式。默认情况下,设置为FP16(每个通道 16 位浮点数的颜色渲染纹理格式)。 | |
FP16 | 16 位浮点数颜色渲染纹理格式。 | |
R11G11B10 | 颜色渲染纹理格式。R 和 G 通道为 11 位浮点数,B 通道为 10 位浮点数。 | |
Rendering Path | 选择 Unity 应该如何渲染图形。不同的渲染路径会影响游戏的性能,以及光照和阴影的计算方式。某些渲染路径更适用于不同的平台和硬件。当使用正交投影时,不支持Deferred渲染。如果相机的投影模式设置为正交投影,这些值将被覆盖,相机始终使用Forward渲染。详情请参阅渲染路径。 | |
Forward | 传统的渲染路径。支持所有典型的 Unity 图形特性(法线贴图、每像素光照、阴影等)。然而,在默认设置下,只有少数最亮的灯光以每像素光照模式渲染。其他灯光在物体顶点或物体级别进行计算。 | |
Deferred | 延迟渲染,具有最高的光照和阴影保真度,最适合有许多实时灯光的场景。它需要一定的硬件支持。 | |
Legacy Vertex Lit | 传统顶点光照,具有较低的光照保真度,不支持实时阴影。它是Forward渲染路径的子集。 | |
Realtime Global Illumination CPU Usage | 设定 Enlighten 实时全局光照在运行时使用的 CPU 计算量。增加此值可以使系统更快地对光照变化做出反应,但会增加 CPU 使用时间。** 注意:** 某些平台允许所有 CPU 核心都被工作线程占用,而某些平台则有最大限制。例如,一些游戏主机最多允许 4 个 CPU 核心。对于 Android 设备,如果是 bigLittle 架构,则只使用较小的 CPU 核心;否则,最大数量为总 CPU 核心数减 1。如果你使用了 URP 或 HDRP 渲染管线,可以在质量设置中配置此属性。 | |
Low | 使用允许的 CPU 线程数量的 25% 作为工作线程。 | |
Medium | 使用允许的 CPU 线程数量的 50% 作为工作线程。 | |
High | 使用允许的 CPU 线程数量的 75% 作为工作线程。 | |
Unlimited | 使用允许的 CPU 线程数量的 100% 作为工作线程。 |
内置着色器设置 🔗
使用这些设置来指定通用渲染管线中所列功能的着色器类型。
渲染路径 | 所使用的着色器 |
---|---|
Deferred | 用于 Deferred 渲染。 |
Deferred Reflection | 用于延迟渲染中的反射探头。 |
Screen Space shadows | 用于 PC / 主机平台上定向光的级联阴影贴图。 |
Motion vectors | 用于基于对象的运动向量计算。 |
Lens Flare | 用于光晕效果。 |
Light Halo | 用于光晕效果中的光圈效果。 |
对于每个功能,你可以选择使用哪种类型的着色器:
- No Support(无支持)禁用此计算。如果不使用延迟渲染,请使用此设置。这将节省内置游戏数据文件中的一些空间。
- Built-in Shader(内置着色器)使用 Unity 的内置着色器进行计算。这是默认设置。
- Custom Shader(自定义着色器)使用自定义的兼容着色器进行计算。这使你能够深度定制延迟渲染。
当选择Custom shader(自定义着色器)时,会在功能属性下方显示一个Shader引用属性,你可以在那里设置要使用的着色器的引用。
始终包含的着色器 🔗
这是一个列表,列出了 Unity 在每个构建中包含了所有可能变体的着色器。这在以下情况下非常有用:如果你想在运行时使用否则不会包含在构建中的着色器或变体,例如如果你使用依赖于这些着色器或变体的 AssetBundles 或 Addressables,或者如果你使用着色器关键字在运行时更改变体。
警告: 不建议对具有大量变体的着色器(如标准着色器)使用此功能,否则可能导致严重的运行时和构建时性能问题。你应该创建只包含所需变体的着色器变体集合,并将其包含在构建中。
注意: 此设置会覆盖着色器关键字声明设置。对于列表中的每个着色器,Unity 都会包含所有关键字的所有组合,即使你使用的是 “shader feature” 声明类型。
要将着色器添加到列表中,请增加Size属性的值。要删除列表中的最后一个着色器,请减少Size属性的值。要删除不是最后一个着色器的着色器,可以将该值设置为None。
着色器剥离 🔗
这些属性允许你配置构建中的着色器变体剥离。
默认情况下,Unity 会检查构建中的场景并自动去除在这些场景中未使用的着色器变体。但是,如果你想在运行时使用否则不会包含在构建中的着色器或变体,例如如果你使用依赖于这些着色器或变体的 AssetBundles 或 Addressables,或者如果你使用着色器关键字在运行时更改变体,则可能会出现问题。
属性 | 功能 | |
---|---|---|
光照图模式 | 确定与光照图相关的着色器变体剥离行为。 | |
自动(Automatic) | Unity 检查构建中的场景并自动去除在这些场景中未使用的变体。这是默认设置。 | |
自定义(Custom) | 选择手动包含或排除以下光照图模式的变体:烘焙非定向烘焙定向实时非定向实时定向烘焙影子掩码烘焙减法 | |
雾模式 | 确定与 Unity 内置雾效果相关的着色器变体剥离行为。 | |
自动(Automatic) | Unity 检查构建中的场景并自动去除在这些场景中未使用的变体。这是默认设置。 | |
自定义(Custom) | 选择手动包含或排除以下雾模式的变体:线性指数平方指数 | |
实例化变体 | 确定与 GPU 实例化相关的着色器变体剥离行为。 | |
去除未使用(Strip Unused) | Unity 仅在至少有一个使用了该着色器且启用了启用实例化的材质时,才会包含用于 GPU 实例化的着色器变体。这是默认设置。 | |
去除所有(Strip All) | 去除所有用于 GPU 实例化的变体,即使它们正在使用中。 | |
保留所有(Keep All) | 包含所有用于 GPU 实例化的变体,即使它们正在使用中。 |
Shader 加载 🔗
这些属性允许您配置 Unity 在应用程序中 “预加载” 着色器变体集合的方式。
有关预加载的信息,包括有关图形 API 支持的重要信息,请参阅《Shader 加载:预加载着色器变体》。
属性 | 功能 |
---|---|
Renderer Light Probe Selection(渲染器光探头选择) | 在 Renderer 接收到来自光探头的全局照明但不在任何光探头群组的影响范围(四面体)内时,选择 Unity 使用的探头类型。默认情况下,选择 “查找最近的光探头(Find closest Light Probe)”,表示 Unity 会搜索最近的光探头,这会消耗大量系统资源。Renderer Light Probe Selection(渲染器光探头选择) 提供了另一种选择。选择 “使用环境探头(Use Ambient Probe)” 以使 Unity 在这些情况下退回到环境探头,这样可以节省系统资源。选项:查找最近的光探头(Find closest Light Probe) 使用环境探头(Use Ambient Probe) |
Preloaded shaders(预加载的着色器) | 应用程序启动时预加载的着色器变体集合。 |
Preload shaders after showing first scene(在显示第一个场景后预加载着色器) | Unity 在 Preloaded shaders(预加载的着色器) 中指定的着色器变体的预加载时间。如果启用,Unity 会在第一个场景完全加载后加载和预加载它们。否则,Unity 会在显示第一个场景之前加载和预加载它们。 |
Preload variants within frame(在帧内预加载变体) | 如果启用了Preload shaders after showing first scene(在显示第一个场景后预加载着色器),则 Unity 会在显示第一个场景后的下一帧预加载 Preloaded shaders(预加载的着色器) 中指定的着色器变体。如果值为 0,则 Unity 会在显示第一个场景后的下一帧预加载所有着色器变体。否则,Unity 会在显示第一个场景后的多个帧中预加载新的着色器变体。在给定的帧中,它会预加载着色器变体,直到达到此处设置的时间限制。之后,直到下一帧,它才会开始预加载新的着色器变体。 |
跟踪的着色器变体 🔗
Unity 编辑器可以在应用程序运行时跟踪应用程序使用的着色器变体。您可以利用此信息构建着色器变体集合。
控制 | 功能 |
---|---|
创建资源 | 使用当前跟踪的着色器变体创建新的着色器变体集合资源。 |
清除 | 清除已跟踪的着色器变体。 |
裁剪设置 🔗
属性 | 功能 | |
---|---|---|
相对于相机的裁剪 | 确定 Unity 是否将相机位置作为裁剪的参考点。 | |
灯光(Lights) | 将相机位置作为裁剪灯光的参考点,而不是世界空间原点。启用 灯光**(Lights)**可减少如果灯光远离相机时的闪烁。更多信息,请参阅了解视锥体。 | |
阴影(Shadows) | 将相机位置作为裁剪阴影的参考点,而不是世界空间原点。启用阴影(Shadows)可减少如果阴影远离相机时的闪烁。更多信息,请参阅了解视锥体。 |
结论 🔗
搬砖愉快!