最新文章
泰课在线 | 微信拼团成功后如何获取课程?
08-09 17:57
Unity教程 | 使用ARKit为iOS开发AR应用
07-31 17:23
Unity Pro专业版7折订阅四选一工具包之VR开发与艺术设计
07-28 11:47
网友使用虚幻UE4实现CAVE 多通道立体渲染的沉浸式环境
07-27 11:57
VR晕动症调查:未来5年内大部分VR晕动症将得到解决
07-27 11:26
AMD CEO:未来3-5年最重要 希望5年达1亿VR用户
07-27 10:44
在虚幻引擎4中模拟区域光源
在真实世界里,光源具有各种各样的形状和大小,例如日光灯、传统灯泡、卷曲灯泡、车头灯、篝火以及天空光照等。
在专业摄影技术中,光照有多种不同的控制方式。彩色透明滤光板可用于给光源着色,镜头挡光板能改变投射光的形状及图案。其中,柔光镜尤其值得关注,像柔光箱和摄影伞,它们可用于重定向、传播及柔化光线。
在现代离线渲染解决方案中,区域光源是一项典型的强大功能。其工作原理与现实世界中摄影师使用的柔光箱漫射器极为相似,即从一个较大的表面发射大量光照,用漫反射光照填充空间。这样可以降低场景中阴影和高光的粗糙度,通常能以更理想的方式渲染表面。
截至本文撰写时,虚幻引擎4尚不支持区域光源。不过,借助一些基本的几何体、简单的材质以及标准的虚幻引擎聚光源,我们可以创建自己的实时漫射器,以令人信服且易于控制的方式模拟区域光源。
步骤1:场景搭建
最初,在我们的简单场景中,有一个类似房子的建筑物,里面设有窗子、门以及天空光源。同时,还有一个定向光源充当太阳。此外,还放置了几个专用的Actor:
- 三个球体反射捕获Actor,用于辅助精确渲染反射表面。
- 一个Lightmass重要体积,用于指导Lightmass进行光照烘焙的位置。
- 一个后期处理体积,用于通过各种视觉特效调整最终渲染效果。
在编辑器中运行时,我们会发现该建筑物的内部非常黑暗。我们的目标是模拟光照通过窗子和门从外面涌入的效果,让光子进入建筑物。这些光子会在场景中来回反射,照亮它们接触到的表面,最终产生更真实、更令人满意的效果。
步骤2:添加光源
我们首先要做的是在建筑物外面,大致每个入口中间的位置添加光源。同时,打开Inner Cone Angle(内锥角)和Outer Cone Angles(外锥角),以最大化传播每个聚光灯的光线,具体参数设置如下:
- Inner Cone Angle(内锥角):80.0
- Outer Cone Angle(外锥角):85.0
构建光照后在编辑器中运行,效果有所改善,我们至少能看到室内场景了。但需要注意的是,此时光照和阴影都非常刺眼。通过组合剩余的Bounce Cards(反光板),我们可以获得与建筑可视化渲染相关的更高质量的区域光照。
步骤3:漫射光线
我们的反光板由简单的平面组成,将这些平面缩放至适当大小,并放置在每个门口的外面,且位于每个聚光灯稍远处。每个平面都应用了一个白色材质,并调整其朝向,使其朝向建筑物内部。
为了给反光板提供恰好足够的覆盖量,需要减小光源本身的衰减半径。不同的场景可能需要不同的值。同时,旋转光源使其朝外,远离建筑物内部,并直接射向刚刚放置的平面,衰减半径设置为:
- Attenuation Radius(衰减半径) = 200.0
高级技巧
如果不需要反光板产生的发光外部世界效果,可以选择所有反光板,从详细信息面板中启用Actor的“Hidden In Game(在游戏中隐藏)”复选框。
脚注说明
LIGHTMASS 设置
Lightmass工具执行光照烘焙过程,并将结果编码到每个对象的光照贴图中。通过增加关键参数,可以提升场景中静态光照的最终质量。该项目的调整参数如下:
- Static Mesh Lightmap resolution(静态网格物体光照贴图分辨率) = 512
- Num Indirect Lighting Bounces(间接光照反弹次数) = 25
- Indirect Lighting Quality(间接光照质量) = 8.0
- Use Ambient Occlusion(使用环境遮挡) = True
- Compress Lightmaps(压缩光照贴图) = False
增加这些值会提升最终的光照质量,但代价是光照烘焙时间会增加,这取决于可用的处理能力。建议先使用较低的值进行迭代,“勾勒”出场景的一般效果和色调,待达到期望效果后,再提升这些值以获得最终效果。
后期处理
后期处理特效是非常强大的功能,能够动态影响渲染器的最终输出效果。即使是少量的后期处理特效也会有很大帮助,例如一些光溢出、颜色校正和少许对比度调整,都能为场景增色不少。具体参数设置如下:
场景颜色
- Fringe Intensity(边缘强度) = 0.575221
- Grain Intensity(颗粒强度) = 0.150442
自动曝光
- Min Brightness(最小亮度) = 1.0
- Max Brightness(最大亮度) = 1.0
镜头眩光
- Intensity(强度) = 0.0
- Unbound(未绑定) = False
边缘及颗粒设置添加了照相失真的暗示。这里,自动曝光和镜头眩光设置有效地禁用了这些效果。Unbound(未绑定)使得后期处理体积可以在整个场景上全局性地生效。
反光板材质
主要的反光板材质非常简单:使用Vector3作为底色,通过Scalar标量将该颜色与自发光通道相乘。材质实例版本增加了亮度,亮度设置为:
- 亮度 = 13.0
需要注意的是,材质的自发光质量没有设置为真正地发射光照到场景并列入Lightmass计算,在这种情况下,这纯粹是一种审美选择。
Master Material | Material Instance