虚幻UE4实现丁达尔效果的3种办法

关于 God Rays 圣光的物理小知识

圣光是一种叫做丁达尔效应(Tyndall effect)的光的散射现象,这种莫名带给人神圣感自带聚光灯效果的自然现象得名于首个深入研究它的物理学家,约翰·丁达尔先森。

UE4:三种圣光 God Rays 的做法
就是这位先森~

因为疫情的缘故让“气溶胶”这个词变得有毒起来,而其实烟,云,雾都是一种气溶胶。圣光现象就是一种光通过气溶胶时发生的散射现象。当秋天起雾的时候或者房间里有烟尘的时候,当光穿过空气微粒,使得微粒好像一个发光体,无数发光体散射的结果,就形成了神圣的光的通路。

UE4 实现圣光的方法:

1. Geometry/Material

UE4:三种圣光 God Rays 的做法

这是一种很传统的做法,就是利用模型和材质放进场景里需要出现光束的地方来模拟圣光。通常这种光束的做法就是用一个圆锥 Cone 贴上半透明自发光材质。优点是 GPU 开销低,缺点是看起来会有点假,不过对于手机一类需要控制GPU开销的平台来说倒是适用的。

UE4:三种圣光 God Rays 的做法

其实如何做这个贴图还有很多方法,这是最基础的一种。再进一步还可以加上 Noise 贴图 Panner 一下做出烟雾的动态效果,以及加上 Camera Fade 的功能让他可以在推近的时候不会有穿帮,比如下面这种。

UE4:三种圣光 God Rays 的做法

2. Light Shafts

UE4:三种圣光 God Rays 的做法

跟方法一比GPU开销较高但会看起来真实些,实现起来也很简单,在光源的参数里勾一下就可以里。缺点是只有 Directional Lights 定向光源上有这个参数,并且只能当光源中心出现在屏幕中时才能看到光束,而且有时候转换角度时会闪烁。所以有时候在你希望产生光束的地方可能并不能生成出令人满意的效果,这种时候就需要配合方法一一起使用,手动补充加一些光束。

Light Shaft Occlusion 和 Light Shaft Bloom 是两种创造光束的参数,前一种是通过变暗屏幕,后一种是通过产生泛光来达到制造光束的目的,你可以只用一个,也可以两个都用。但是两个都用也会增加 GPU 开销。

3. Volumetric Fog

UE4:三种圣光 God Rays 的做法

4.16 版本之后加入的功能,在指数高度雾 Exponential Height Fog 里勾选 Volumetric Fog 打开体积雾,然后用光源上的 Volumetric Scattering Intensity 参数去控制它的强度。这是三种方法里开销最高,光源越多开销越大。好处是相比其他两种方式,这种方式会更灵活更加接近真实物理,支持半透明,并且适用于所有类型的光源,甚至是来自粒子系统的光。能与动态以及静态的阴影一起使用。而且可以通过在特定区域加上粒子系统来限制圣光的范围。

官方教程:

体积雾圣光 | God Rays Using Volumetric Fog [技巧分享] 体积雾圣光 | God Rays Using Volumetric Fog(官方汉化)

原文始发于:UE4:三种圣光 God Rays 的做法

未经允许不得转载:cocos集中营 » 虚幻UE4实现丁达尔效果的3种办法
微信公众号:zs40086
免vip看全网视频,抢先福利电影啥都有!
10000人已关注
分享到:
赞(1) 打赏