虚幻引擎,体积雾、体积光、镜头泛光

1、体积雾

这里介绍的是用于地面的体积雾效果,效果如图1-1:

图1-1

首先,需要场景中存在指数级高度雾并开启体积雾(如图1-2)。然后创建材质,材质域选择"体积",混合模式选择"Additive"。材质节点如图1-3。

图1-2

图1-3

这里介绍下材质的思路,纹理贴图是一张噪声图片(噪声值0~1),采样UVS只取UV(即XY),采样出来的颜色值R减去该点的S(即高度Z),结果连接到消光节点,作为该点雾气的浓度。实现越高的位置雾气越薄的效果。

2、体积光(基于体积雾)

如图2-1,包裹场景的是一个消光为0.1的体积雾,利用体积雾我们可以实现体积光的效果。但是由于消光在各个地方都是一样,这就导致在阴影处也有很强的雾气效果(如图2-2),这不是我期望的。我只希望在有光的地方有体积雾,没光的地方(阴影)没有体积雾。

图2-1

图2-2

这里利用ShadowMap的方式,在场景与太阳之间添加一个纹理捕获Actor,用于捕获该视角下的正交深度纹理(如图2-3),然后体积光材质中,利用当前坐标点采样正交深度纹理,如果该点的深度大于正交深度纹理的深度,则该点在阴影中,消光设置为0。否则设置为0.1。图2-4、图2-5为体积光的材质。

ShadowMap可以参考我之前的博客UE引擎实现ShadowMap、体积光(C++)

最终效果见图2-6

图2-3

图2-4

图2-5

图2-6

3、镜头泛光

这部分参考官方文档配置即可:虚幻引擎中的泛光

效果如图3-1

图3-1

相关推荐
小张不爱写代码13 小时前
[Unity 技巧] 如何自定义 Inspector 变量显示名称 (CustomLabel)
unity·游戏引擎
地狱为王18 小时前
Unity使用Spleeter分离人声和伴奏
unity·游戏引擎·spleeter
Howrun77721 小时前
虚幻引擎_游戏暂停菜单
虚幻
lllljz1 天前
Blender导出模型到Unity或UE5引擎材质丢失模型出错
unity·ue5·游戏引擎·blender·材质
_乐无1 天前
Unity 发布 Android 安卓端所有文件可读写
android·unity·游戏引擎
JIes__2 天前
Unity(二)——核心系统
unity·游戏引擎
Howrun7772 天前
虚幻引擎_C++_游戏开始菜单
游戏·游戏引擎·虚幻
速冻鱼Kiel2 天前
虚幻状态树解析
ue5·游戏引擎·虚幻
Howrun7772 天前
虚幻引擎关卡相关的问题
虚幻
天人合一peng2 天前
Unity 中 Text-TextMeshPro的获取与赋值
unity·游戏引擎