• Unity 通过代码设置贴图导入压缩格式


    各平台如果不勾选 override 将不会应用单独设置而是现实默认设置。

    Compression 只有 Default 设置里才能设置,Compression 与 Format 之间是映射关系。如果不勾选 override,Compression 的设置不同,在不同平台将会默认显示不同的压缩格式。

                    TextureImporter ti = AssetImporter.GetAtPath(m_texturePathList[i]) as TextureImporter;
                    if (ti == null) { continue; }
                    if (ti.textureType == TextureImporterType.Sprite) { continue; } // 排除 Sprite
    
                    TextureImporterPlatformSettings ti_iPhone = ti.GetPlatformTextureSettings(m_platform);
                    bool isModify = false;
                    if (ti_iPhone.overridden)
                    {
                        if (ti_iPhone.format == TextureImporterFormat.PVRTC_RGB4)
                        {
                            ti_iPhone.format = TextureImporterFormat.ASTC_RGB_4x4;
                            isModify =true;
                        }
                        else if (ti_iPhone.format == TextureImporterFormat.PVRTC_RGBA4)
                        {
                            ti_iPhone.format = TextureImporterFormat.ASTC_RGBA_4x4;
                            isModify =true;
                        }
                    }
                    else if (ti_iPhone.compressionQuality == (int)TextureCompressionQuality.Normal) //默认就会是PVRTC
                    {
                        ti_iPhone.overridden = true;
                        ti_iPhone.format = ti.DoesSourceTextureHaveAlpha() ? TextureImporterFormat.ASTC_RGBA_4x4 : TextureImporterFormat.ASTC_RGB_4x4;
                        isModify =true;
                    }
                    if (isModify)
                    {
                        ti.SetPlatformTextureSettings(ti_iPhone);
                        ti.SaveAndReimport();   // 应用并重新导入
                        AssetDatabase.ImportAsset(m_texturePathList[i]);
                        Debug.LogFormat("Texture:{0}", m_texturePathList[i]);
                        count++;
                    }
    

    格式对比如下:

  • 相关阅读:
    基于windows的mysql读写分离和amoeba配置
    windows环境下mysql主从配置
    Mysql主从报错锦集
    Nginx流控
    windows_windows下的rsync
    Kafka+ZooKeeper高可用集群部署
    通过Nginx、Consul、Upsync实现动态负载均衡和服务平滑发布
    Redis性能指标监控
    MongoDB用户权限管理
    ZooKeeper原理详解及常用操作
  • 原文地址:https://www.cnblogs.com/ZeroyiQ/p/12097339.html
Copyright © 2020-2023  润新知