UE5中实现后处理深度描边

后处理深度描边可以通过取得边缘深度变化大的区域进行描边,一方面可以用来做角色的等距内描边,避免了菲尼尔边缘光不整齐的问题,另一方面可以结合场景扫描等特效使用,达到更丰富的效果:

后来解决了开启TAA十字线和锯齿问题,若遇到这2个问题请至文章底部查看。

参考:https://www.bilibili.com/video/BV11e4y1n7dD


1.创建材质函数

我们通过一种卷积算子计算边缘,先创建该算子的材质函数

2.编写材质函数蓝图

该材质蓝图传入偏移值,输出5个UV采样坐标信息。

3.编写核心后处理材质

新建材质球PPS,设置材质球参数类型为Post Process(后处理材质球)。

连接材质球节点,计算描边结果并与场景颜色合并。

将后处理材质挂载于Volume上:

因为直接使用的场景深度,这时候整个场景都被深度描边了:

4.使用自定义深度优化

这不是想要的效果,我们将场景深度改为自定义深度。

框选材质球PPS内的所有SceneTexture:SceneDepth节点 ,进行修改。

多选所有需要深度描边的物体,勾选Render CustomDepth Pass:

最终完成描边效果。


补充,开启TAA时会有十字线的问题,可缩小该系数解决:

关于锯齿问题,可以将后处理的执行位置移动至ToneMapping之前,让引擎自带抗锯齿来进行处理:

相关推荐
西岸行者4 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
修炼前端秘籍的小帅4 天前
Stitch——Google热门的免费AI UI设计工具
前端·人工智能·ui
王码码20354 天前
Flutter for OpenHarmony:socket_io_client 实时通信的事实标准(Node.js 后端的最佳拍档) 深度解析与鸿蒙适配指南
android·flutter·ui·华为·node.js·harmonyos
悠哉悠哉愿意4 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
别催小唐敲代码4 天前
嵌入式学习路线
学习
毛小茛4 天前
计算机系统概论——校验码
学习
babe小鑫4 天前
大专经济信息管理专业学习数据分析的必要性
学习·数据挖掘·数据分析
winfreedoms4 天前
ROS2知识大白话
笔记·学习·ros2
在这habit之下4 天前
Linux Virtual Server(LVS)学习总结
linux·学习·lvs
我想我不够好。4 天前
2026.2.25监控学习
学习