Unity URP 输出透明背景
目标
在URP渲染管线下,输出带有透明背景的切图或者视频。默认情况下背景是不带透明通道的。可通过以下方式实现透明背景输出。(基于Unity 2021.3.1f1c1版本)
操作步骤
- 将Camera的Background Type设置为Solid Color,并让Background颜色Alpha通道设设置为0。
- 通过Frame Debugger,排查,渲染时通过ColorGradingLut将输出格式从RGBA32位转换为了B10G10R11。这是因为摄像头开启了HDR,unity使用32位存储HDR信息,丢弃了Alpha通道。
- 并闭Camera的HDR功能或者保留Alpha通道,使用A16R16G16B16作为输出格式 。这个功能开关现在Unity编辑器已没有地方设置,在打包时通过脚本完成。
#if UNITY_EDITOR//在Framebuffer中保留Alpha通道PlayerSettings.preserveFramebufferAlpha = true; #endif
另一种方式是关闭HDR,还是使用原有格式。但对于表现效果会有限制。建议还是第一种方式 。
- 继续通过Frame Debugger排查,在第一个后处理时 StopNaNs时,FrameBuffer的格式已为R内容已带有Alpha通道。
- 同时在StopNaNs Shader中会将Alpha通道重置为1,修改下shader代码如下:
- 在Bloom后处理后,Alpha通道又变为1。是因为unity boom后处理是针对屏幕空间整体进行发光处理,在EncodeHDR时,透明通道改为了1。关闭Bloom后处理特效或修改后处理shader。类似的其他后处理按同样方式排查。
half4 EncodeHDR(half3 color){#if _USE_RGBMhalf4 outColor = EncodeRGBM(color);#elsehalf4 outColor = half4(color, 1.0);#endif#if UNITY_COLORSPACE_GAMMAreturn half4(sqrt(outColor.xyz), outColor.w); // linear to γ#elsereturn outColor;#endif}
- 最后开启URP后处理后,会统一执行UberPostProcess的效果,在UberPost.shader中,将Alpha通道设置为1。修改UberPost.shader,取颜色的Alpha通道。
- 保存,重新运行即可输出带有透明通道的贴图。
Unity URP 输出透明背景相关推荐
- python抠透明图_python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图
因为最近在做深度学习抠图,正好要用到蒙版进行抠图,所以我将抠图代码进行了封装注释,可以直接使用.可能走了弯路,若有高见请一定提出! 主要代码 import cv2 from PIL import Im ...
- keyshot导出html,【答疑】keyshot6怎么导出png?如何用keyshot输出透明背景png图片啊? - 视频教程线上学...
keyshot6材质粘贴快捷键是什么?keyshot6材质粘贴快捷键是哪个? 2019-04-28 浏览量:297 提问者:酒飘人间 回答: Keyshot最常用的几个快捷键: Keyshot镜头缩放 ...
- python和pil实现抠图_python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图
因为最近在做深度学习抠图,正好要用到蒙版进行抠图,所以我将抠图代码进行了封装注释,可以直接使用.可能走了弯路,若有高见请一定提出! 主要代码 import cv2 from PIL import Im ...
- java 验证码透明背景_Java中的证书透明度验证
java 验证码透明背景 因此,我有一个幼稚的想法,即除了证书有效性检查(在Java中)之外,将证书透明性验证作为每个请求的一部分也很容易. 牺牲了整个周末的一半时间,我可以证明这并不是一件小事. 但 ...
- php 网页 透明背景图片,php 处理透明背景的图片时的问题
PHP图象处理之透明背景的gif和png图片的一些问题 1,直接读取有透明背景的PNG格式文件,然后直接输出,背景变成了黑色,gif则没有这种情况. 解决方法:使用 imagesavealpha ($ ...
- gif透明背景动画_常用的设计文件格式——jpg、png、gif、psd、ai、cdr、tiff
我们使用电脑的过程中经常会遇到各种各样的格式,比如办公文件的几种常用格式,一些电子书籍的常用格式,设计过程中也会遇到一些常用的格式~ 上面的都是以前糖糖上学或工作中做的笔记,以及自己对这些格式的理解和 ...
- Unity URP入门实战
导读 本文讲述 如何从应用层面使用URP 如何在代码层面为URP增加更多的渲染特性 如果拓展URP的后处理效果 URP管线特性 光源数量: 直线光外加4个其他光源 内置管线的多Pass Forward ...
- 照片透明背景抠图怎么做?试试这几种抠图方法
将照片的背景抠掉并替换为透明背景可以帮助我们在设计.制作海报.名片.广告等时更方便地处理图片,使得图片更加美观和专业.例如,如果你想在一个海报或者广告中加入一个人物或者物品的图片,但是这个图片的背景并 ...
- vs2019添加图片html,VS2019窗体美化 -界面透明背景图片
VS2019窗体美化 -界面透明背景图片 VS2019窗体美化 -界面透明,背景图片 扩展-管理扩展下-在线: Color Theme Editor for Visual Studio 2019 设置 ...
最新文章
- ITextSharp使用说明
- 回馈粉丝,包邮送一台全新iPad
- Task On The Board CodeForces - 1367D(思维)
- Node的异步与java的异步_node.js和异步编程回文
- java电影票选座_jQuery实现电影票选座效果手机端代码
- Socket一次Recv接受的字节有限制么?
- leetcode - 467. 环绕字符串中唯一的子字符串
- MacOS中运行第一个PySide6实例
- 《高阶Perl》——3.8 对象方法里的缓存
- python日历下拉框_selenium+Python(Js处理日历控件)
- php编网页版计算器,php编程实现简单的网页版计算器功能
- php 支付宝退款40004,接入支付宝支付 错误码4000,排查方法——开发记录
- 虚拟机linux删除文件后未释放空间,【Linux命令】删除大文件后磁盘空间未释放问题...
- 【HDOJ】1814 Peaceful Commission
- windows下rainbond 安装unable to find image locally docker errot response from daemon
- 黑白琴键 java_黑白琴键上的爱阅读答案
- 接着外挂教程 VB 从零开始编外挂
- 明明200M的宽带,为什么网速还是很慢?一招教你解除限制
- Android 蓝牙 A2dp 编码SBC、AAC、Aptx、LDAC、LHDC aduio音频概述(1)
- 使用Tomcat插件实现WEB项目热部署
热门文章
- 惠普服务器系统管理 密码,惠普服务器 DL380 Gen9 server2012R2 登录密码找回全过程...
- IPV6 UDP socket报错:网络不可达
- java chrome 控制台_[Java教程]Chrome 控制台指南
- Java扑克牌小游戏
- 由Python生成采购清单BOM
- 马上七夕了程序员如何给爱人一个浪漫表白?
- 子不语启动招股:业绩开始下滑,存在破发风险,由华丙如夫妇控股
- 为一台计算机配置Web服务器,DNS服务器与DHCP服务器
- 三只松鼠利润在下降?店宝宝:零食电商怎么做才能突破现有瓶颈?
- Unity 与 微信小程序(游戏)交互