zoukankan      html  css  js  c++  java
  • 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++;
                    }
    

    格式对比如下:

  • 相关阅读:
    JDK 7 和 JDK 8 的区别
    浅显了解数据库存储引擎
    C++ 字符函数
    华为机试题 合唱队
    华为机试题 密码验证合格程序
    华为机试题 删除字符串中出现次数最少的字符
    如何解决机器学习中数据不平衡问题
    三分(求单峰或单谷)
    Vim配置——自动缩进(C/C++)
    Html日期控件
  • 原文地址:https://www.cnblogs.com/ZeroyiQ/p/12097339.html
Copyright © 2011-2022 走看看