目录

一、Frame Settings(帧设置)

二、Volume

三、HDRP配置文件、帧设置和Volume之间的关系

四、HDRP配置文件

1.Rendering

(1)Color Buffer Format(颜色缓存格式)

(2)Lit Shader Mode(Lit着色器模式)

(3)Motion Vectors(运动矢量)

2.Post-processing Quality Settings(后处理质量设置)

五、针对不同平台使用不同的HDRP配置文件


HDRP配置文件的作用是管理HDRP项目的所有渲染功能。HDRP会使用这个配置文件生成一个HDRP渲染管线的实例,而这个渲染管线的实例包含用于渲染的中间资源。

一、Frame Settings(帧设置)

帧设置针对的是场景中的Camera(相机)、Realtime Reflection(实时反射)和Baked or Custom Reflection(烘焙或自定义反射)的相关设置。后面两个反射相关的设置应用在Reflection Probe(反射探针)组件上。帧设置可以让我们为不同的相机和反射探针启用/禁用不同的HDRP功能组合。通过这样的灵活配置,不仅可以让我们实现不同相机和反射探针的独特画面效果,也可以在某些情况下关闭一些功能以提升总体性能。

帧设置的优先级低于HDRP配置文件,也就是说,如果在HDRP配置文件中没有打开某项功能,那么帧设置中对应的功能就会被自动禁用。

HDRP为帧设置提供了默认设置界面,我们可以通过Window->Project Settings→HDRP Global Settings→Frame Settings打开该界面。

我们可以在以下组件中启用/禁用帧设置:

  • Camera组件下的Custom Frame Settings。
  • Reflection Probe组件和Planar Reflection Probe组件下的Custom Frame Settings。

二、Volume

Volume的作用是通过调整各项HDRP功能的参数,影响相机所看到画面的最终渲染效果。

Volume的优先级低于帧设置,也就是说,如果在当前相机的帧设置中没有打开某项功能,那么在Volume中对相关功能的调整是不起作用的。

三、HDRP配置文件、帧设置和Volume之间的关系

HDRP配置文件、默认帧设置、自定义帧设置和Volume四者之间的关系:

  • 每个HDRP项目中可以有多个HDRP配置文件。每个配置文件对应不同的画质或者目标平台(PC、Xbox、PlayStation)。但是HDRP项目每次只能使用一个HDRP配置文件,也无法在运行时切换HDRP配置文件
  • HDRP项目会为Camera、Baked or Custom Reflection和Realtime Reflection提供一套默认的帧设置。HDRP配置文件控制帧设置里面的功能,如果在HDRP配置文件中没有启用某项功能,则在帧设置里面其就会被禁用。所以,如果我们要在项目中使用在HDRP配置文件中已经启用的功能,也要确保默认帧设置中启用了相关的功能(即使在HDRP配置文件中启用了某个功能,但是没有在帧设置中启用它,在项目中也是没法使用它的。)
  • 可以为场景中一个(或者多个)相机和反射探针自定义帧设置。如果在这些自定义帧设置中启用某个功能(前提是在HDRP配置文件中已经启用),那么自定义帧设置中的配置信息会覆盖(Override)默认帧设置中的配置信息。
  • 可以在同一个场景中创建多个Volume。这些Volume的模式可能是全局(Global)的或者本地(Local)的。但是不管Volume的模式是什么,在Volume上做的参数调整,最终影响的是某个相机的画面效果。因此如果在当前活跃相机的帧设置(如果没有启用自定义帧设置,就使用默认帧设置)中没有启用某个功能,比如Fog,那么在与此相机相关的Volume中调整Fog参数值就没有任何意义。

四、HDRP配置文件

HDRP配置文件中的参数可以分成八类(详细说明参考官方文档),下文主要记录常用的参数:

1.Rendering

(1)Color Buffer Format(颜色缓存格式)

出于对性能的考虑,HDRP默认使用R11G11B10格式(不包含Alpha通道)。如果我们要把HDRP渲染的画面合成到另外的图片上,就需要包含Alpha通道,这时就要选择R16G16B16A16格式。不过带Alpha通道的格式会对性能造成一定影响。

如果我们要使用R16G16B16A16格式作为最终渲染输出的格式,那么在HDRP配置文件Post Processing的Buffer Format中也要选择相同的格式,否则HDRP不会对Alpha通道做后处理,从而导致合成时因为Alpha通道上没有后处理效果,无法与颜色通道中的信息匹配。

(2)Lit Shader Mode(Lit着色器模式)

Lit Shader是HDRP材质使用的默认着色器

  • Forward(前向渲染):Lit Shader仅使用前向渲染。
  • Deferred(延迟渲染):Lit Shader会使用延迟渲染,一些高级材质还会使用前向渲染。
  • Both(延迟和前向渲染都可用)。

可以通过Camera组件中的自定义帧设置(Custom Frame Settings)为相机选择Deferred或者Forward渲染。

选择Both模式会让HDRP为两种渲染方式都编译相关的着色器变体,导致内存占用增加。如果选择Forward或Both模式,则可以选择MSAA(Multisample Anti-aliasing Quality)抗锯齿效果

(3)Motion Vectors(运动矢量)​​​​​​​

如果启用该选项,则HDRP支持运动矢量。HDRP可以在屏幕空间反射(Screen Space Reflection)和运动模糊(Motion Blur)中使用运动矢量。通过Camera组件启用的Temporal Antialiasing(TAA)必须使用运动矢量才能正常工作。

如果禁用此选项,则运动模糊和TAA功能将不会工作,屏幕空间反射则会使用低质量渲染模式。

2.Post-processing Quality Settings(后处理质量设置)

目前可以设置Depth of Field(景深)、Motion Blur(运动模糊)、Bloom(泛光)和Chromatic Aberration(色差)等数值。

五、针对不同平台使用不同的HDRP配置文件

因为不同计算平台的性能不同,所以在同一个HDRP项目中可以创建多个HDRP配置文件,针对不同的计算平台应用不同的HDRP配置文件。要针对不同的平台使用不同的设置,需要将这三个HDRP配置文件关联到不同的质量等级上(Project Settings→Quality)。

如果在Graphics中设置了HDRenderPipelineAsset-AllLights作为当前项目默认的HDRP配置文件,但是为其设置的质量等级为Ultra(对应的HDRP配置文件为HDRenderPipelineAsset-High),那么当前项目实际使用的HDRP配置文件是HDRenderPipelineAsset-High。也就是说质量设置里面的HDRP配置文件会覆盖默认的配置文件。(前文也有相关说明)

Unity | HDRP高清渲染管线学习笔记:HDRP配置文件(HDRP Asset)相关推荐

  1. 学习记录:UnityHDRP高清渲染管线学习 day1

    附一张这本书的封面截图 ps:(我自我介绍一下吧,高中不好好学习去了大专,现在大一暑假在一家郑州互联网公司实习,月薪4500,转正之后是八千多(我觉得挺多了),其实并不是我多聪明,只是抓住了机会不想再 ...

  2. unity 不再渲染局部_Unity 最新版本迎来260项功能改进,高清渲染管线HDRP升级

    最新上线的Unity 2019.3版本带来了超过260项功能改进,其中的高清渲染管线(HDRP)功能可在高端游戏主机和PC上解锁高清精美画质的无限潜能. 高清渲染管线在2019.3中经过验证几近纯熟, ...

  3. Unity Shader卡通渲染 · 高清渲染管线·HDRP

    Unity Shader卡通渲染 · 高清渲染管线·HDRP 前言 最近在研究HDRP管线中的卡通渲染,就想着能不能把官方的UCTS移植到HDRP管线里面去,说干就干,到昨天晚上上传了github,今 ...

  4. 【HDRP高清渲染管道】创建HDRP工程,把内置管线工程升级为HDRP工程

    目录 一.通过模板创建HDRP项目工程 1.创建模板示例工程 2.单击High Definition RP 3.命名并创建项目 4.研究并学习后续开发 二.通过HdrpCore模块创建HDRP项目工程 ...

  5. 软考高项之学习笔记——质量成本概念

    软考高项之学习笔记--质量成本概念 一.常见混淆概念 二.质量成本相关概念解释 1.质量成本概念 2.一致性成本 3.非一致性成本 三.历年真题 一.常见混淆概念 质量成本.一致性成本.非一致性成本. ...

  6. Unity开发基础——使用字符串学习笔记

    蓝鸥Unity开发基础使用字符串学习笔记 本节内容:使用字符串:字符串拼接.转义字符 一.字符串拼接:字符串可以使用+或+=进行字符串拼接!! using System; namespace Less ...

  7. Unity API常用方法和类学习笔记2

    Unity API常用方法和类学习笔记2 ------Mathf & Input & Vector & Random 类Mathf 一.静态变量 print(Mathf.Deg ...

  8. Unity API常用方法和类学习笔记1

    Unity API常用方法和类学习笔记1 ------主要构架(Unity-Engine.GameObject.Component) 事件 一.事件执行顺序 二.测试代码 using System.C ...

  9. Unity的VRTK捡拾物体学习笔记

    Unity的VRTK捡拾物体学习笔记 1.VRTK捡拾物体设置: 2.VRTK可交互对象设置: 3.触摸设置: 4.触摸设置2:

最新文章

  1. 上交大实时姿态估计AlphaPose
  2. 【鸿蒙 HarmonyOS】Ability 中使用 XML 布局文件 绘制布局及 UI 组件
  3. 我的世界梦之边缘5服务器在维护吗,8月5日服务器例行维护公告(已完成)
  4. 获取窗口上指定控件集合 2012-08-22 16:14 498人阅读 评论(0) 收藏...
  5. mongodb实验报告_Dropwizard,MongoDB和Gradle实验
  6. python-opencv 最快的遍历颜色空间_居住空间设计的七种设计风格
  7. React组件生命周期-正确执行运行阶段的函数
  8. linux pxe 博客,pxe无人值守linux系统安装
  9. 一些算法竞赛参考书及豆瓣评分
  10. python分析每月销售数据_利用Python进行某单品销售数据分析
  11. 计算机硬盘除了c盘其他全不见了,电脑除了c盘其他盘都不见了
  12. 最新版华美淘客商城淘宝客程序源码
  13. java实现sug,Elasticsearch搜索Suggest功能优化
  14. Java 入门-02-人机交互-图形化界面的小故事
  15. gcc命令行选项说明
  16. 【MYSQL】foreign key 外键约束(详解)
  17. 系分 - 计算机网络
  18. python蜂窝状六边形_CSS-蜂窝状展示区域(多个六边形)的一种实现方式
  19. 机器人将颠覆零售业,看AI在零售行业有哪些应用?
  20. unity 画球面_unity中实现Mesh画球体、半球体、四分之一球体以及任意弧面

热门文章

  1. 【JavaScript--判断闰年的方法】
  2. 主成分分析——PCA降维Python实现及碎石图
  3. matlab 口号色号修改器
  4. FCK js 操作方法
  5. 个人 OKR目标如何实际伤害你的团队
  6. 智科人之人工智能课程上机实验(智科还单独有一个综合实验):PROLOG语言练习与编程上机实验
  7. 职场:“工作”的理解
  8. 勾股数元组( 如果3个正整数(a,b,c)满足a2 + b2 = c2的关系)
  9. 基于51单片机的公交站自动播报系统proteus仿真 程序原理图设计
  10. 毕业设计 stm32车牌识别系统 -物联网 嵌入式 单片机