Unity PostProcessing v2 官方文档翻译01 (简介、安装、快速开始)

翻译的原文是Unity PostProcessing在GitHub上的文档,希望可以方便一些英文不是特别方便的Unity美术同学阅读学习,如果翻译的过程中有错误或者官方文档有些修改,希望大家可以留言指出,我及时进行修正

大致介绍


Post-processing是将全屏的滤镜和特效应用于摄像机的图像缓冲区,然后渲染在屏幕上的过程。只需要花费较少的时间进行设置,就可以大大提高产品的视觉效果。
你可以使用Post-processing来模拟物理摄像机和电影效果。
下面的图片展示了应用和没应用Post-processing的差别。


未应用Post-processing
应用Post-processing

安装

Package(资源包)


安装和更新Post-processing比较规范的方式是使用Unity2018.1之后推出的Package Manager。

注意:如果你已经在你的项目中引入了某一个Scriptable Render Pipeline(可编程渲染管线),那么Post-processing就已经导入在你工程中了</font>

打开Window->Package Manager,在左侧列表上方从In Project切换到All,并在列表中选择Postprocessing。在右边的面板你可以看见关于这个资源包的一些信息和一个install(update)按钮,点击这个按钮可以下载当前可用的最新版本的资源包。

Sources(源代码)


如果你愿意的话也可以使用最新版本的Post-processing,但注意只有打包发布的版本是官方推荐的。如果你对Git不是很熟悉,我们建议下载Github Desktop,很容易使用并且和Github集成的很好。

首先确认你没有导入Postprocessing资源包,不然会和当前安装方式冲突。如果已经安装了,那么可以使用package manager移除当前资源包(Window -> Package Manager)。

然后你可以使用Git客户端将post-processing repository克隆到Assets文件夹中。当前的branch(分支)是v2,并且已经被设为默认,不需要转换到别的branch,除非你想获取一些其他branch中的一些特性。

如果你不想用Git客户端,也可以点击网页右上方"Clone or download"这个绿色按钮下载后,解压缩到你的工程中。使用Git的好处是可以很快的更新到最新版本,而不用再去下载、解压、覆盖真个文件。这样也更安全,可以正确的处理移动或者移除文件。

快速开始

注意:如果你创建工程的时候使用了带有Post-processing的模板,那就不用进行下面大多数步骤了,但还是建议你读一下这段,理解每一项是如何工作的</font>

Post-process Layer


要在摄像机上激活post-processing,第一件事就是在摄像机上添加Component -> Rendering -> Post-process Layer组件。

第一部分描述摄像机的 Volume blending (体积混合) 设置:

  • Trigger(触发):默认情况下摄像机会被添加到这里,传入的Transform将用来驱动volume blending的特性。在某些情况下你可能想用摄像机之外的Transform,比如在顶视角游戏中,你可能想用角色控制器取代摄像机来驱动,如果设置为None将会禁用当前层的局部Volume blending(全局属性依旧会起作用)。
  • Layer(层):用来应用Volume blending的层遮罩,它可以让你对volume进行过滤,并且对优化volume遍历十分有效。应该始终将volume设置为专用的Layer(层),而不要使用Default Layer(默认层),这样可以提高性能。这个选项默认被设置为Nothing,所以不要忘记更改它,否则不会产生效果。关于Layer(层)的更多信息以及如何在Unity中使用,可以阅读这篇文档

接下来是 Anti-aliasing(抗锯齿),需要对每个需要启用抗锯齿的摄像机进行设置。取代全局设置使用这种方式的好处是在项目中可以在需要抗锯齿的时候再去启用它。例如,你的主摄像机可能使用的 Temporal Anti-aliasing 抗锯齿算法,而另外一个用于渲染监控摄像头的摄像机只需要使用 FXAA 抗锯齿算法。关于抗锯齿的更多信息可以阅读这篇文档

Stop NaN Propagation(阻止无效像素扩散) 可以在Post-processing应用之前消除任何无效的、非数值的像素,并用黑色的像素来取代它。通常建议启用这个选项,可以有效的避免场景中Post-processing的数据崩坏。

Toolkit 部分有一些功能,你可以使用下面其中一种模式将当前帧导出为EXR:

  • Full Frame (as displayed): 照原样导出摄像机的画面(同Game视图中摄像机拍摄渲染的画面一样)。
  • Disable post-processing: 同上个模式一样,只是不应用任何的Post-processing。
  • Break before Color Grading (linear): 同第一个模式类似,但是不会应用Color Grading。适用于你想在其他软件进行调色的情况。
  • Break before Color Grading (log): 同上一个模式类似,但导出的时候会对图像进行log-encoded。适用于你想在其他软件中进行高精度的HDR调色处理等工作。

其他实用的功能:

  • Select all layer volumes: 选择所有可以影响当前Post-process LayerPost-process Volume组件。
  • Select all active layer volumes: 选择所有正在影响当前 Post-process LayerPost-process Volume组件。

最后的部分允许你去改变自定义效果的渲染顺序。关于自定义效果更多的信息可以阅读这篇文档

Post-process Volumes


Post-processing在当前这个框架中的工作方式分为局部和全局两种。它允许你给与每套volume一个优先级和一组效果重写来自动在场景中混合post-processing。例如,你可以设置一个全局的Light vignette effect(晕影效果),当玩家进入山洞的时候,你可以重写Intensity使晕影的效果增强,同时保持其他设置不变。
Post-process Volume组件可以被添加在任何的游戏物体上,包括摄像机也可以。但通常建议新建一个专门的游戏物体来赋予这个组件。让我们从创建一个全局的Post-process Volume开始。创建一个空物体,并在它身上添加组件(Component -> Rendering -> Post-process Volume)或者使用(GameObject -> 3D Object -> Post-process Volume)。不要忘记将这个物体的Layer(层)设置为摄像机上的Post-process Layer组件的应用的层。

创建后默认情况组件是空的,并且有两种模式:

  • Global: 设置为全局模式后,不会有任何的边界,将会被应用在整个场景中。当然你也可以在场景中拥有多个Volume。
  • Loacal: 设置为局部模式后,需要添加一个Collider(碰撞器)或Trigger(触发器)来确定这个Volume的边界。任何类型的3D Collider都可以使用,简单的Cube Collider到复杂的Mesh Collider都可以,但我们建议尽可能使用一些简单的Collider,因为Mesh Collider较为消耗资源。局部的Volume可以设置一个Blend Distance(融合距离)值,代表从Volume外多远开始一点点渐变到当前这个效果(根据Post-process Layer组件Trigger属性赋予的Transform来计算)。

当前这个案例我们设置为全局模式,勾选Is Global

Weight(权重)可用来减少该volume的全局影响,0表示完全不起作用,1表示完全起作用。

Priority(优先级)可用来确定该volume在堆中的优先级,值越高,优先级越高。

我们还需要创建一个profile(配置文件)应用在当前的volume上(或重用已存在的文件)。我们可以点击New按钮(或者可以在Project视图中通过Create -> Post-processing Profile创建)。创建之后将作为资源文件存储在工程中。你可以直接选择这个配置文件进行编辑,或者更好的方式是该volume组件的检视面板中进行编辑。当赋予了一个配置文件后,可以看到新出现了一个Clone按钮,点击这个按钮会复制一份当前赋予的这个配置文件,并将新复制出来的配置文件赋予当前的volume组件。当你想对一个配置文件进行快速调整的时候可以这样处理(尽管我们应该尽可能的去重写同一个配置文件)。

我们现在可以向堆中覆盖这个效果了。


下面是对这个效果的分析:

每个字段左侧都有一个开关,如果你想使用这个设置,那在编辑这个设置之前应该勾选这个开关。你也可以通过左上角的开关来快速的关闭或开启下面的子项的这些开关。

右上角的on/off切换按钮用来更改当前效果在堆栈中是否启用(比如,如果你想在一个优先级更高的Volume上禁用一组效果),然后这个切换按钮处于标题栏上,所以会作用于当前Volume的一整组效果。

最后,你可以右键点击某一个效果的标题栏,可以进行复制、粘贴、移除、重置等操作。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,132评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,802评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,566评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,858评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,867评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,695评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,064评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,705评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,915评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,677评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,796评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,432评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,041评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,992评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,223评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,185评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,535评论 2 343

推荐阅读更多精彩内容

  • 一、Unity简介 1. Unity界面 Shift + Space : 放大界面 Scene界面按钮渲染模式2D...
    MYves阅读 8,175评论 0 22
  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明先生_x阅读 15,967评论 3 119
  • 你的眼 吻着手机的脸 手机 牵着充电宝 数据线 载着他俩 奔爱 手机要线 输送 宝宝有限的电 宝宝凝望 墙内 源源...
    小曼的岛阅读 291评论 19 20
  • 参考:Keras学习率调整深度学习框架Keras使用心得 一、如何调整学习率 Keras提供两种学习率适应方法,可...
    咫尺是梦阅读 6,487评论 0 1
  • 昨晚我梦见了一个梦 在梦的梦里 我乘着屋后的那条河回到了家里 河里好多鱼和虾 以及许多我不认识的其他的鱼 我小心的...
    小雨人_fd78阅读 251评论 0 0