导入图片自动设置图片格式
using UnityEditor;
public class AutoSetTextureUISprite : AssetPostprocessor
{

    void OnPreprocessTexture()
    {
        //自动设置类型;  
        TextureImporter textureImporter = (TextureImporter)assetImporter;
        textureImporter.textureType = TextureImporterType.Sprite;//设置图片类型

        /*TextureImporterPlatformSettings setting = new TextureImporterPlatformSettings();
        setting.format = TextureImporterFormat.RGBA32;
        setting.maxTextureSize = 2048;
        setting.compressionQuality = 80;//[0,100]
        setting.textureCompression = TextureImporterCompression.Compressed;
        这个是真的不知道怎么用,设置了难道就可以了?

        textureImporter.SetPlatformTextureSettings(setting);*/
        
        textureImporter.SetPlatformTextureSettings("iPhone", 2048, TextureImporterFormat.RGBA32, true);//过时但是能用
        textureImporter.SetPlatformTextureSettings("Android", 2048, TextureImporterFormat.RGBA32, true);
    }
}


脚本可以放在工程Assets的任意地方,然后导入图片就会自动设置了。

默认设置为Sprite是因为在NGUI中使用texture打包出来的图集图片也是texture中,会在某些平台上产生模糊,所以默认设置成Sprite且为RGBA32不压缩格式,以免忘记

当导入的图片是在粒子等上使用时,也会因为是Sprite而使用不了从而去主动设置格式,避免了n多图集没有修改格式,而造成的模糊


首页 我的博客
粤ICP备17103704号