【Unity】HDRP管线常用到的设置整理.
有机紫菜
2024年08月16日 21:32

HDRP中常用到的设置.

可用于快速过一遍.哪些重要的设置,尤其是加粗的部分.2021版本.

常用的设定列表

  • 1.Player选项中的Gpu Skinning,lightMap编码.lightMap流形式传输.

  • HDR颜色模式开启.ScriptingBackend脚本后端---Mono还是L2CPP,incremental GC

  • 2.player中的Script Compilation列表,--"Additional Compiler Arguments"是一个字段,允许开发者输入额外的编译器参数,这些参数会在编译项目中的C#脚本时被传递给Roslyn编译器(Unity用于编译C#​脚本的编译器)。还有下方的更多设置.

  • 3,Editor页中纹理压缩,域重载.

  • 4,Graphics中,预加载着色器.设置.---自动剔除着色器设置.

  • 5,每个画质设置下的.Rendering---Color Buffer,Lit Shader Mode,动态分辨率,decal详细设置,法线影响啥的.

ProjectSetting中的所有设置精要

  • Editor---Remote 下的图像压缩类型。.纹理压缩选项,域重载.

  • Burst Aot Setting---Burst编译器的Ahead Of Time(AOT)编译设置。可以将Unity的Job System中的IL(中间语言)代码编译为高效的本地代码,以此来提高性能。

  • Adaptive Performance---移动平台的性能提升.组件,通常没有安装.动态性能优化框架

  • Graphics---HDRP global Settings

    • Shader Stripping”允许开发者选择是否自动或手动从游戏中移除未使用的着色器

    • Shader Loading---预加载着色器.---需要了解Unity的shader加载过程和预加载设置.

    • 使用Unity收集当前使用到的着色器变体为了最快速、最方便的帮助我们创建和收集那些真正被用到的着色器和他们的变体,Unity已经在编辑器中内置了可以追踪那些已经被使用到的着色器和他们的变体,并可以直接生成相应的ShaderVariantCollection资源。

  • MemorySetting---内存管理,都是锁定的,需要详细了解Unity的内存运行机制.包括托管区域与各个区域,还有啥时释放内存之类的.

  • Physics---常用物理,比较简单.

  • Player---分辨率等很多设置.代码后端选择,代码编译选项等.图形API选择.

  • Preset Manager--预设管理器,FBX导入时候,可以设定规则.

  • Quality---HDRP---Vsync 垂直同步帧率模式,Texture质量,流传输,各向异性.粒子射线投射预算,异步资源上传设置.

  • SceneTemplate--Default Types 设置控制 Unity 在从场景模板创建新场景时是否默认克隆特定类型的资源。

  • ScriptExecutionOrder---脚本运行顺序.可以将脚本拖动到 Default Time 栏的上方或下方;上方的脚本将在默认时间之前执行,而下方的脚本将在默认时间之后执行。对话框中从上到下的脚本顺序决定了脚本的执行顺序。不在对话框中的所有脚本都以任意顺序在默认时隙中执行。

  • Services---没啥用

  • ShaderGraph---没啥用,里面就2一个错误阀值,一个警告阀值.

  • Tags and Layers---就是设置,tags和层的,和外面的面板上设置没啥区别.

  • TextMeshPro---暂时没调查.

  • Time---系统时间,不用动通常.

  • TimeLine---就一个运行时帧率.

  • UI Builder---没开启没啥用似乎.---应该是UI Toolkit相关

  • Version Control---没开启,没啥用

  • VFX---就运行时间,和几个shader引用.

  • VisualScripting---没开启,没啥用

  • XR Plugin Management---没啥用

HDRenderPipeline GlobalSettings中的设置.

  • VolumeProfiles---管理场景中不同体积效果(如雾、光晕等)的配置文件。

  • Diffusion Profile Assets---就2个,一个皮肤的SSS材质配置,一个树叶的.

  • !!!FrameSetting---控制每帧渲染的详细设置,包括分辨率、渲染层、透明度等。

    • 注意,其详细设置虽然很多,但分3部分,Camera通常渲染的部分,反射的部分,和烘培反射的部分.

    • 贴花和光照的层设置.

  • CustomPostProcess Orders---后期特效的渲染插入排序.

  • Miscellaneous---包含其他各种全局设置,这些设置可能不适合归类到其他特定类别中。

  • Resources---管理HDRP渲染管线使用的资源,如纹理、材质、着色器等。

HD Render Pipeline Asset.中的设置列表

  • Rendering---设置,里面的最主要.

    • Color Buffer Format---一般是R11G11B11---16的话,内存似乎会增加占用.

    • Lit Shader Mode--延迟渲染,前向渲染和两个都用.---具体性能还需要测.多采样抗锯齿质量---关闭默认.

    • AOV(附加观察值)API。AOVs允许开发者获取特定点的颜色、深度等属性,这对于高级视觉效果和分析非常有用。

    • 自定义Pass的缓存类型设置.

      1. 地形孔: 勾选了,表示在渲染地形时考虑地形的孔洞和不连续性,这有助于创建更真实的 terrain。

      2. 透明背面: 勾选了,表示在渲染透明物体时,考虑物体的背面,这有助于创建更真实的透明效果。

      3. 透明深度预通过: 勾选了,表示在渲染透明物体时,提前计算其深度信息,这有助于提高性能。

    1. 动态分辨率.动态分辨率可以根据屏幕的内容调整渲染的分辨率,以获得更好的性能和视觉效果。---DLSS似乎和这选项有关.

  • Lighting---设置.里面有包括APV在内的重要光照设置.

    • 基本是场景的阴影,反射,接触阴影,设置,以及天空的设置.体积信息等.

  • Lighting Quality Settings---里面主要是.AO,光追AO,接触阴影,屏幕空间反射,与屏幕空间全局光照,光追版等的---低中高,下的采样率设置.

  • Material---里面主要是,针对当前画质的,材质可选级别.

  • Post-processing--里面选项比较少主要是颜色分级的查找表选项.Grading LUT Size、Format,以及Buffer Format

  • Post-processing Quality 则基本上是.几个特殊后处理的采样率.质量.

  • XR--Single Pass(单次通过),Occlusion Mesh(遮挡网格),Camera Jitter(相机抖动),Allow Motion Blur(允许运动模糊)

  • Virtual Texturing---不知道是否和真正的虚拟纹理有关

附录:颜色分级表

  1. Grading LUT Size(颜色分级查找表大小)

    • 作用:这个设置决定了用于颜色分级查找表(Look-Up Table,LUT)的大小。LUT是一个预先计算好的颜色转换表,用于调整图像的颜色和亮度。更大的LUT尺寸可以提供更平滑的颜色渐变和更高的颜色精度,但会增加内存使用和处理时间。

    • 一般选择:通常情况下,开发者会选择较小的LUT尺寸,如32或64,以优化性能。如果对颜色精度有更高的要求,可以选择更大的尺寸,如1024。

  1. Grading LUT Format(格式)

    • 作用:这个设置决定了LUT的存储格式。不同的格式会影响LUT的颜色精度和内存使用量。

    • 一般选择:通常,可以选择"Float"格式以获得最高的颜色精度,但这会使用更多的内存。如果性能是一个考虑因素,可以选择"Half"或"Byte"格式,它们分别使用16位和8位来存储颜色信息,从而减少内存使用。

  1. Buffer Format(缓冲区格式)

    • 作用:这个设置决定了用于后处理的渲染缓冲区的格式。它影响颜色深度和后处理效果的精度。

    • 一般选择:通常,可以选择"R11G11B10"格式,这是一种常用的格式,提供了良好的颜色精度和性能平衡。如果需要更高的颜色精度,可以选择"R16G16B16A16"格式,但这会使用更多的显存。