提到屏幕后处理,游戏开发过程中是必不可少的,像Bloom、Blur这类常用的后处理几乎存在于市面上大多数游戏中。Unity为我们提供了一个官方插件叫Post Processing Stack,可以满足于日常开发需求,那么到底该怎么用呢?今天我就来一探究竟。
首先,我们要明白什么是后处理。后处理是将游戏引擎中摄像头获取到的图像在它显示在屏幕前所做的一系列操作和处理。说白了,后处理就是运用各种技术,处理屏幕上显示的那一张图片,就像把图片扔进PhotoShop涂涂改改一样,改得好惊艳众人,改不好一地鸡毛o( ̄︶ ̄)o
然后我们需要安装后处理插件,以前是在Unity官方商店下的,下完Import进项目就行。自从Unity2018提出Packager Manager之后,我们可以从这边直接下载安装。PS. 本文环境为Unity2019.3
先点击Windows->Packager Manager
然后找到Post Processing点积Install,搞定!
安装完毕以后,我们在Camera上挂一个Component叫Post-process Layer,Layer设为PostProcessing,或者叫另外的名字也可以,这个Layer是自己加的。
然后我习惯在Lighting这个Object底下挂个Empty GameObejct,这个gameobject设置在PostProcessing Layer(就是上面自己添加的那个Layer),里面挂个叫Post-process Volume的Component,点击Add effect添加所需效果,我这里已经全加好了。那个Is Global勾选后则后处理特效应用于全局,不勾选则应用于局部。什么叫应用于局部呢?这个Component是挂在一个GameObject上的,这个GameObject是有范围的,不勾选这个那么应用范围就在这个GameObject的范围内,比如把地图上的某个房间用这个GameObject包起来,那么进了这个房间范围是一种后处理,而在房间之外会是另一种了。
好了,现在开始我们一个一个来看这些后处理效果。由于篇幅较长,我把他们分开成了很多篇,大家可以通过超链接看自己需要的效果。PS. 以下所有内容翻译自官方文档,如果有不对的地方请以文档为准!
参考
https://github.com/Unity-Technologies/PostProcessing/wiki