news 2026/4/18 8:25:31

[Unreal shader]后处理全屏输出深度纹理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
[Unreal shader]后处理全屏输出深度纹理

UE中,全屏输出深度缓冲(Depth Buffer),最常用且最标准的方法是使用后处理材质 (Post Process Material)。这和Unity的ScriptableRenderPass逻辑类似,在UE中完全可以通过材质编辑器可视化实现。

方法一:使用后处理材质

1.1 创建后处理材质

新建材质,命名为M_VisualizeDepth。打开材质,在左侧详情面板中 (Details) 中,将Material Domain修改为Post Process

1.2 获取深度缓冲

新建SceneTexture节点,将Scene Texture Id设置为SceneDepth,获取场景深度纹理。

注:这相当于Unity Shader中采样深度纹SAMPLE_DEPTH_TEXTURE(_CameraDepthTexture, uv)。UE的SceneDepth返回的是世界单位 (厘米) 的线性距离,是浮点数(例如 1000.0 代表 10米)

1.3 处理深度缓冲值

获取SceneDepth的R通道数值,连接一个Mask节点,只取R通道。连接Divide(除法) 节点,在Divide的B输入端创建一个Constant,设为2000 (代表20米)。连接Saturate(截断) 节点 (防止超过1过曝)。连到Emissive Color,效果:0 ~ 20米是从黑到白的渐变,超过20米全是白色。

​​1.4 应后处理材质

在场景中添加PostProcessVolume组件,勾选Infinite Extent (Unbound)使其全局生效。在Details面板找到Rendering Features -> Post Process Materials,添加一项,在下拉菜单选择Asset Reference。将后期材质M_VisualizeDepth拖入。

方法二:场景捕获 (Scene Capture 2D)

创建一个 Scene Capture Component 2D (或者拖入一个 Scene Capture 2D Actor)。创建一个 Render Target 资源,赋给它的 Texture Target。关键设置:将 Capture Source 改为 SceneDepth in R。现在 Render Target 纹理里存的就是 32位的深度数据了。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 4:04:27

提升稳定性:虚拟串口驱动异常处理策略

虚拟串口驱动的“不死之心”:如何让通信在崩溃边缘自我修复你有没有遇到过这样的场景?工业现场的一台PLC通过虚拟串口与上位机通信,突然传感器断线几秒,再插回去时,软件却再也收不到数据——必须重启整个系统。或者&am…

作者头像 李华
网站建设 2026/4/18 7:01:44

Dify平台是否支持微调模型?答案在这里

Dify平台是否支持微调模型?答案在这里 在企业纷纷拥抱AI的今天,一个现实问题摆在面前:如何让大语言模型真正理解我们的业务?通用模型虽然强大,但面对专业术语、内部流程或特定语气回复时,常常“答非所问”。…

作者头像 李华
网站建设 2026/4/16 17:33:45

零基础入门:认识音频设备频率响应的基本概念

听得见的科学:从零开始搞懂音频设备的“频率响应”你有没有过这样的经历?在选购耳机或音箱时,看到参数表上写着“频率响应:20Hz–20kHz”,心里一喜——这不正好覆盖人耳能听到的全部范围吗?可买回来一听&am…

作者头像 李华
网站建设 2026/4/16 16:03:29

ES6模块化详解:深度剖析import与export语法规范

深入理解 ES6 模块系统:从 import/export 到现代前端工程实践你有没有遇到过这样的场景?项目越做越大,脚本文件越来越多,全局变量满天飞,改一个函数名可能就让另一个页面“炸了”;或者引入了一个工具库&…

作者头像 李华
网站建设 2026/4/17 11:56:15

安装Flume

安装Flume (1)解压 [rootmaster app]# tar -zxvf 07-apache-flume-1.11.0-bin.tar.gz -C /root/software/ # 改名字: [rootmaster software]# mv apache-flume-1.11.0-bin/ flume(2)修改环境变量并生效[rootmaster sof…

作者头像 李华
网站建设 2026/4/18 7:50:45

零基础学Keil4:单片机开发环境安装教程

零基础也能上手:手把手教你搭建Keil4单片机开发环境你是不是也曾在网上搜索“Keil4怎么安装”、“为什么找不到STM32芯片型号”、“ST-Link连不上怎么办”,结果翻了十几页都没找到靠谱答案?别急,这篇文章就是为你准备的——零基础…

作者头像 李华