预处理技术,用于处理图片渲染到屏幕上的过程,就是给摄像机加个效果,只不过这个效果可以预览
安装:
在Window > Package Manager 选择post-processing 安装。
Post-process Layer
给camera 添加 Component -> Rendering -> Post-process Layer
组件
Volume blending :
- Trigger:默认是主摄像机,用来驱动volume blending,也可以用其他的物体作为驱动器,比如俯视图游戏,可以选择玩家
- Layer: 应用 volume blending的层. 默认为空,所以不要忘记修改它,否则就不会应用post process效果
Anti-aliasing :为摄像机设置抗锯齿,可以为单独的摄像机设置抗锯齿的模式
Stop NaN Propagation: 开启之后unity会自动用黑色代替没有渲染好的像素
Toolkit :工具栏,可以将当前帧导出到exr one of the following modes:
- Full Frame (as displayed): 完整帧,和运行画面一样
- Disable post-processing: 没有预处理效果
- Break before Color Grading (linear): 在颜色开始渐变前停止导出
- Break before Color Grading (log): 导出到log,用于第三方软件分析
Other utilities include:
- Select all layer volumes: 选择所有层为Layer里的 Post-process Volume 组件 .
- Select all active volumes:选择所有目前影响 Post-process Volume 的组件
Post-process Volumes
post-processing 通过使用 local & global volumes工作,每一个 volume(效果)都有一个优先级,来决定哪个效果先渲染,场景中可以有很多种效果
Post-process Volume 组件可以被添加到任何物体上,包括摄像机他自己,最好是添加到一个独立的物体上,专门来控制摄像机效果,(Component -> Rendering -> Pöst-process Volume
) 或者 GameObject -> 3D Object -> Post-process Volume
. 不要忘记给带有volume组件的物体设置层,并且把它添加到 Post-process Layer组件的的Layer层里,这样才能有效果
- Global:global volume没有任何边界,将应用于整个场景。你当然可以在你的场景中有几个这样的global volume
- Local: local volume 需要一个collider 或者 trigger来定义它影响的范围.任何3D物体都可以,建议使用网格简单的物体做限定边界,因为这样比较省性能. Local volumes 有
Blend Distance
表示从效果开始到消失的距离。
Weight
可以用于减少volume及其所有覆盖的全局权重,0表示完全没有效果
Priority
优先级:优先级越高,该效果越先渲染
我们还需要创建一个profile 或者使用已经创建好的. 点击 New
按钮(你也可以使用Create -> Post-processing Profile
. 会在你的asset中创建.创建之后你会看见 Clone
按钮. ,如果要快速创建的话,比较方便