Unity 下获取tga,png,jpg的raw rgbadata数据

博客探讨了在Unity环境下将Python图像处理算法转化为C#的挑战,包括Unity对Bitmap的支持限制、Texture2D的读写权限问题以及纹理压缩格式的不兼容。由于Unity不支持System.Drawing库,且Texture2D获取像素数据需开启特定属性,加之压缩格式的障碍,使得直接转换变得困难。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目前得出的结论是,暂时不可行,如果有其他方案,可以帮忙留言下。

之前自己做的有几个检查贴图原生图的一些问题,比如包围盒过大,或者透明区域过大,之类的检测算法,但是是直接用Python的PIL来做的。C#调用python的方式,但是这种方案效率比较低。所以考虑如何将python转成C#,但是调研了下,发现不可行。记录下

1,Unity下C#是裁剪过的,不支持Bitmap,Bitmap之前是在System.Drawing里面。Unity里不支持System.Drawing这个库。
2,Unity下都是通过Asset来导入,Texture2D,Texture2D如果要获取pixel数据,需要修改texture的read/write属性,一般项目组基本都是关的。比如GetPixel,GetRawTextureData这些接口都需要texture开启read/write属性。
3,Unity下的Testure2D一般是meta设置过的,默认是压缩过ETC,ASTC这些,dev build估计可以,但是环境没有。

所以目前暂时不行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值