[Unity 笔记] Unity Editor中如何更改Texture2D对应资源的压缩格式,并保存


关于保存问题,实在是 踩了不少坑(几乎花了一个下午)。  这里额外说明一下,如果只是当次使用,可以用UnityEditor.compressTexture的方法去修改压缩格式,但是这种方法重开项目后就还原了。

 

 修改Texture2D的Format,需要修改Texture2D中的 ImportSettings,修改其中的TextureImporterFormat, 代码如下:

  Texture2D t2D = (Texture2D) AssetDatabase.LoadAssetAtPath(t2D_path, typeof(Texture2D));
  TextureImporter ti = (TextureImporter)TextureImporter.GetAtPath(AssetDatabase.GetAssetPath(t2D));
  ti.textureFormat = changeTextureImporterFormat;

 

t2D对象是读取进来的Texture2D对象。  关于 TextureImporterFormat, 可以参考Unity官方api,链接如下: 

http://docs.unity3d.com/ScriptReference/TextureImporterFormat.html

在更改了ImporterFormat后,一定一定要记得重新Import  Texture2D !! 否则格式转换无法保存,即使当时觉得正确,重开项目后会发现更改恢复了。 重新Import方法如下:

AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(t2D));

这样压缩格式得到更改,并且项目重开也不会还原。



希望能帮助到有需要的同学,尽量少踩坑。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值