最近在项目开发中遇到一个问题,美术给的png图片在unity中查看的时候Default选项下透明区域会显示黑白色,用于spine动画中会显示白色的色块。但是透明区域显示黑色的地方正常。

打印图片每个像素点发现,a为0的情况下,白色区域的rgb都为1,黑色区域rgb都为0,查看shadow代码发现用到了这句代码。

将这句代码修改为Blend SrcAlpha OneMinusSrcAlpha可以解决当前问题,但是又会影响到其他使用此shadow的UI表现,由于不懂PS,故用代码对资源做统一修改。

using UnityEngine;
using UnityEditor;public class PngAlphaClearColor : EditorWindow
{public Texture2D texture2D;[MenuItem("Test/PngAlphaClearColor")]public static void ShowWindow(){EditorWindow.GetWindow(typeof(PngAlphaClearColor));}private void OnGUI(){texture2D = EditorGUILayout.ObjectField(texture2D, typeof(Texture2D), false) as Texture2D;if (GUILayout.Button("Test")){Test();}}public void Test(){string path = AssetDatabase.GetAssetPath(texture2D);TextureImporter ti = (TextureImporter)TextureImporter.GetAtPath(path);ti.isReadable = true;AssetDatabase.ImportAsset(path);for (int i = 0; i < texture2D.width; ++i){for(int j = 0; j < texture2D.height; ++j){Color color = texture2D.GetPixel(i, j);if (color.a == 0){texture2D.SetPixel(i, j, new Color(1, 1, 1, 0));}}}System.IO.File.WriteAllBytes(path, texture2D.EncodeToPNG());ti.isReadable = false;AssetDatabase.ImportAsset(path);AssetDatabase.Refresh();}

png图片在unity中Default模式下透明区域显示白底的问题相关推荐

  1. mysql lock trx id_MySQL中RR模式下死锁一例

    原标题:MySQL中RR模式下死锁一例 作者:高鹏(八怪),<深入理解MySQL主从原理32讲>系列的作者 原文出处:https://www.jianshu.com/p/3e57a428d ...

  2. vmware中NAT模式下,虚拟机与主机能ping通 为什么虚拟机不能上网

    vmware中NAT模式下,虚拟机与主机能ping通 为什么虚拟机不能上网? 方案一: 1.把虚拟机的网络连接设置为桥接或NAT都可以的 2.把虚拟机和主机设置为同一网段 主机 网络邻居属性 3.双击 ...

  3. 帧中继环境中NBMA模式下OSPF的配置

    帧中继环境中NBMA模式下OSPF的配置 在帧中继服务器添加端口 R1(config)#int s1/0 R1(config-if)#ip add 172.16.134.1 255.255.255.0 ...

  4. Unity中在Editor下的延迟调用

    Unity中在Editor下的延迟调用 说到延迟调用, 大家肯定首先想到的是MonoBehavior的协程, 但是在Editor不太好用. 我们这里给出两个方案供大家选择. async 第一种比较简单 ...

  5. mysql len hex asc_MySQL中RR模式下死锁一例

    原标题:MySQL中RR模式下死锁一例 作者:高鹏(八怪),<深入理解MySQL主从原理32讲>系列的作者 原文出处:https://www.jianshu.com/p/3e57a428d ...

  6. 360浏览器 兼容模式下页面显示异常(出现不改出现的HTML标签)

    在360浏览器的兼容模式下,显示了在非兼容模式中没有出现的HTML标签,如下图 我到对应的页面去找,发现是标签的代码规范问题,这两个input本来是隐藏的,但是由于不规范书写(hidden处),在万恶 ...

  7. Unity中帧数FPS的显示查看

    Unity中帧数FPS的显示查看 显示帧数 开发测试时的Game视图 开发测试时的Profiler视图 发布后的FPS显示 显示帧数 FPS可以用3中方式查看: 开发测试时的Game视图 如下图显示的 ...

  8. Unity 在编辑模式下退出游戏

    实现在编辑器环境下退出编辑器,在非编译器环境下退出游戏 我们需要判断当前是否在编辑器环境中,在unity中是使用预处理的方式判断当前的环境,常用的预处理标识符如下: 标识符 解释 UNITY_EDIT ...

  9. 【Unity】ISO模式下地形Terrian细节丢失/镜头拉远就没细节了

    在ISO(正交)模式下会出现这种状况. 方案1:分辨率选项中,Low Resolution Aspect Radios去掉勾选,如下图: 方案2:另外,分辨率对地形的细节展示程度也有影响.越高越接近编 ...

最新文章

  1. codeforces水题100道 第二十七题 Codeforces Round #172 (Div. 2) A. Word Capitalization (strings)...
  2. oracle分区交换速度,oracle交换分区对数据的加载提速案例
  3. android 分辨率合集,Android编程之分辨率处理相关代码段合集
  4. 年薪80万难求一名AI程序员,技术革新世界已到来!
  5. 数据建模-经典教程笔记
  6. Docker 容器内体验 WebSSH
  7. 窗内网所有编程类视频大集合
  8. vant4的showtoast非正常显示问题
  9. 如何使用AutoCAD软件截图?
  10. 论游戏中Buff的实现
  11. 一些热门的前端UI组件库(附用例)
  12. java excel排序的方法_Java怎么对Excel进行自定义排序?
  13. Bowtie2的简单使用笔记
  14. Pygame 官方文档 - pygame.key
  15. JS: || 和 ??
  16. 电影版本名词解析(CAM,TS,TC,DVDSCR,DVDRIP,HR-HDTV)更新版
  17. editplus5激活码 (亲测可用)
  18. J storm战队成员_DOTA2J.Storm战队介绍-DOTA2MD迪士尼Major预选赛J.Storm战队介绍_牛游戏网攻略...
  19. 打印九九口诀表 (15 分)
  20. 玩转数据,和echar

热门文章

  1. 面试者该如何霸气反问面试官?
  2. webuploader上传图片
  3. 展示未来之光——LED显示屏的无限可能
  4. 国产无线充电宝有哪些?无线充电的充电宝推荐
  5. ASP.NET动态创建控件之绝境求生第一页
  6. Echart世界地图汉化
  7. 学习自绘控件(mfc) 转(下)
  8. iphone 信息提示类
  9. Linux文件权限大全(chmod+chown)
  10. Lambda表达式从入门到玩嗨儿~