转载

虚幻UE4提供了后处理特效的功能,可以实现景深,光溢出,色调调整,饱和度等等。要使用虚幻4的后处理,就一定要用到PostProcessVolumn,这是一种特殊的体积,可以放置在场景中的任何位置。
 
       每个 PostProcessVolume 实质上是一个类型的混合层。其他混合层可以来自游戏代码(比如命中特效),UI 代码(比如暂停菜单),摄像机(比如暗角效果),或者 Matinee(旧胶片效果)。每个混合层都能有自己的权重值,这样混合效果能容易控制。混合的做法始终是 Lerp(线性插值),当前启用的体积将会参与混合。一个 PostProcessVolume 仅在 Camera 在该体积内才会参与混合,除非体积的 Unbound 选项被勾选,这时该体积作用于整个场景。
 
属性
描述
Settings
体积的 后处理设置,大部分属性前的勾选框定义了该行的属性是否使用该体积的 Blend Weight 参与混合。
Priority
当多个体积重叠时定义它们参与混合的次序。高优先级的体积会被当前重叠的其他体积更早计算。
Blend Radius
体积周围基于虚幻单位的距离,用于该体积开始参与混合的起始位置。
Blend Weight
该体积的影响因素。0代表没有效果,1代表完全的效果。
Enable
定义该体积是否参与后处理效果。如果勾选的话,该体积则参与混合计算。
Unbound
定义该体积是否考虑边界,如果勾选的话,该体积将作用于整个场景而无视边界。如果没有勾选,该体积只在它的边界内起效。
      
       后处理设置都是一些用于后处理效果的属性,我们可以控制这些属性并且覆盖这些属性。
这些属性在UScene类中的FPostProcessSettings中定义 。每个PostProcessVolume 包含一FPostProcessSettings 结构体作为 Settings 属性,其中包含了每个属性定义,并能够在体积中对他们进行覆写。PostProcessVolume里面搜索settings就可以看到各种特效配置,如图1-1。如果我们想添加自定义的后处理效果,就要在图1的Misc里面Blendables数组添加自己的特效材质。
 

                                                                       图 1
       我们可以在Misc里面添加不同的材质,来调节全局对比度,饱和度以及色温的效果,也可以做一些镜头的特效,比如模糊,景深等。另外,我们也可以利用他实现描边的效果,这需要一个菲涅尔效果的材质,同时要把他添加到当前的渲染层里面。UE4为了方便开发者,特意在Mesh组件里面提供了一个这样的接口bRenderCustomDepth来允许在游戏线程里面单独渲染自定义的效果材质。不过要在材质里面做好对应的设置(在UE4官方商城有教程)。
注意:一般来说,我们也可以在摄像机组件里面添加后处理效果(与上图的内容类似),这样我们在地图任何位置都可以看到效果。如果我们使用的是PostProcessVolume ,就需要保证摄像机的视点(理解为摄像机的位置即可)位于这个体积里面。

虚幻UE4的后处理特效介绍 http://www.52vr.com/thread-31215-1-1.html的更多相关文章

  1. Unity3D图像后处理特效——Depth of Field 3.4

    Depth of Field 3.4 is a common postprocessing effect that simulates the properties of a camera lens. ...

  2. Unreal Engine 4(虚幻UE4) GameplayAbilities插件入门教程(一)

    本文系笔者的实习生分享会内容预备兼GameplayAbilities的初学者教程. 本文适合已有四十天UE4开发经验的初学者. 参考资料:https://wiki.unrealengine.com/G ...

  3. Unreal Engine 4(虚幻UE4)GameplayAbilities 插件入门教程(三)技能标签(Ability Tags)

    本教程参考了https://wiki.unrealengine.com/GameplayAbilities_and_You,如果没有学习前两篇教程,请前往学习. GameplayAbilities插件 ...

  4. Unreal Engine 4(虚幻UE4)GameplayAbilities 插件入门教程(四)技能屏蔽和简单的Buff等

    本节内容继续上一节教程的内容(如果没有看过前面的教程,请前往学习),不会讲太难的新东西,而是继续探究技能标签(Abiilty Tags)的内容.先来一道开胃菜. 第1.1步: 将上一次的召唤冰龙中的C ...

  5. Unreal Engine 4(虚幻UE4)GameplayAbilities 插件入门教程(七)Ability的信息传递等

    本节及后面的内容将会探索更加有意思的内容,更加逼近实际的使用的内容.我们本节内容不难,讲的是释放Ability时的信息传递: 第一步:创建一个GA称为GA_AOE_BlindVengeance,复仇忌 ...

  6. [UE4]虚幻UE4 .uproject文件无关联 右键菜单少了

    前一段时间因为一些事,重装系统  然后重新安装UE4跟VS  ,突然发现...竟然之前的UE4原先的项目找不到了,然后用UE4打开就提示 “该文件没有与之关联的程序来执行该操作,请先安装一个程序... ...

  7. Unreal Engine 4(虚幻UE4)GameplayAbilities 插件入门教程(五)技能属性集(AttributeSet)

    如果没有完成前面的教程,请前往学习.先上一段理论介绍(源于https://wiki.unrealengine.com/GameplayAbilities_and_You#GameplayTasks): ...

  8. Unreal Engine 4(虚幻UE4)GameplayAbilities 插件入门教程(二)

    我们接着学习.如果没有学习第一篇,请前往学习. 由于GameplayAbilities插件基本上没有资料(除了前面提供的那篇Dave的博文以外,再无资料,有迹象表明Dave是这个插件的开发者). 这个 ...

  9. 虚幻UE4中移动端水材质的设置

    内容: *概述 *纹理文件 *基本颜色 *法线的设置 *标量参数和材质属性 *场景设置 *最终效果 概述 本教程由52VR翻译自unrealengine官方,在本教程中,我们将教您如何创建可以在移动设 ...

随机推荐

  1. LeetCode387First Unique Character in a String字符串中第一个唯一字符

    给定一个字符串,找到它的第一个不重复的字符,并返回它的索引.如果不存在,则返回 -1. 案例: s = "leetcode" 返回 0. s = "loveleetcod ...

  2. [转]8天玩转并行开发——第二天 Task的使用

    在我们了解Task之前,如果我们要使用多核的功能可能就会自己来开线程,然而这种线程模型在.net 4.0之后被一种称为基于 “任务的编程模型”所冲击,因为task会比thread具有更小的性能开销,不 ...

  3. Innodb_buffer_pool_read

    > show status like 'Innodb_buffer_pool_read_%'; +---------------------------------------+-------- ...

  4. MySQL实战总结

    极客上买了<MySQL实战45讲>,用导图大致总结后,跟大家分享下

  5. 转载 ASP.NET SignalR 与LayIM配合,轻松实现网站客服聊天室(三) 激动人心的时刻到啦,实现1v1聊天

    ASP.NET SignalR 与LayIM配合,轻松实现网站客服聊天室(三) 激动人心的时刻到啦,实现1v1聊天   看起来挺简单,细节还是很多的,好,接上一篇,我们已经成功连接singalR服务器 ...

  6. mysql分区与分表的区别

    分区 分区就是把一个数据表的文件和索引分散存储在不同的物理文件中. mysql支持的分区类型包括Range.List.Hash.Key,其中Range比较常用: RANGE分区:基于属于一个给定连续区 ...

  7. naturalWidth、naturalHeight来获取图片的真实宽高

    一般在图片放大缩小,或动态插入图片时使用 function imagea(img){ var w = img.naturalWidth; var h = img.naturalHeight; } 注: ...

  8. JSP四大域对象与九大内置对象

    什么是内置对象? 在jsp开发中会频繁使用到一些对象,如 ServletContext.HttpSession.PageContext 等: 如果每次我们在jsp页面中需要使用这些对象都要自己亲自动手 ...

  9. 使用truss、strace或ltrace诊断软件问题-转

    http://blog.itpub.net/35489/viewspace-84293 进程无法启动,软件运行速度突然变慢,程序的"Segment Fault"等等都是让每个Uni ...

  10. 【python之路32】python异常处理

    一.捕获异常 1.try  except #!usr/bin/env python # -*- coding:utf-8 -*- num = input("请输入一个数字:") t ...