static void FormatPathRecursively(string path, List <string> ignoreList, FormatPathPair fpp, TFormatterPlatform platform, bool origin = false)
        {
            string        platformName = TextureFormat.GetPlatformName(platform);
            TextureFormat tf           = fpp.GetFormatByPlatform((int)platform);

            path = path.Replace('\\', '/');
            for (int k = 0; k < ignoreList.Count; k++)
            {
                if (ignoreList[k] == path && !origin)
                {
                    return;
                }
            }
            TextureImporterFormat tif = tf.format;
            bool      advanced        = tif > 0;
            ApplyData ad = new ApplyData(path, ignoreList, fpp);

            ad.tf           = tf;
            ad.advanced     = advanced;
            ad.platformName = platformName;
            ApplyImporter importerHandler = null;

            switch (fpp.iType)
            {
            case ImporterType.Texture:
                importerHandler = ApplyTextureImporter;
                break;

            case ImporterType.Model:
                importerHandler = ApplyModelImporter;
                break;

            case ImporterType.Audio:
                importerHandler = ApplyAudioImporter;
                break;
            }
            if (Directory.Exists(path))
            {
                ad.needToCheck = true;
                DirectoryInfo   di    = new DirectoryInfo(path);
                FileInfo[]      files = di.GetFiles();
                DirectoryInfo[] dis   = di.GetDirectories();
                foreach (FileInfo fi in files)
                {
                    int    index     = fi.FullName.IndexOf("Assets");
                    string assetPath = fi.FullName.Substring(index);
                    assetPath    = assetPath.Replace('\\', '/');
                    ad.assetPath = assetPath;
                    importerHandler(ad);
                }
                foreach (DirectoryInfo idi in dis)
                {
                    FormatPathRecursively(idi.FullName.Substring(idi.FullName.IndexOf("Assets")), ignoreList, fpp, platform);
                }
            }
            else if (File.Exists(path))
            {
                importerHandler(ad);
            }
        }
        static void FormatPathRecursively(string path, List <string> ignoreList, FormatPathPair fpp, bool origin = false)
        {
            path = path.Replace('\\', '/');
            for (int k = 0; k < ignoreList.Count; k++)
            {
                if (ignoreList[k] == path && !origin)
                {
                    return;
                }
            }
            ApplyData     ad = new ApplyData(path, ignoreList, fpp);
            ApplyImporter importerHandler = null;

            switch (fpp.iType)
            {
            case ImporterType.Texture:
                importerHandler = ApplyTextureImporter;
                break;

            case ImporterType.Model:
                importerHandler = ApplyModelImporter;
                break;

            case ImporterType.Audio:
                importerHandler = ApplyAudioImporter;
                break;
            }
            if (Directory.Exists(path))
            {
                DirectoryInfo   di    = new DirectoryInfo(path);
                FileInfo[]      files = di.GetFiles();
                DirectoryInfo[] dis   = di.GetDirectories();
                foreach (FileInfo fi in files)
                {
                    int    index     = fi.FullName.IndexOf("Assets");
                    string assetPath = fi.FullName.Substring(index);
                    assetPath    = assetPath.Replace('\\', '/');
                    ad.assetPath = assetPath;
                    importerHandler(ad);
                }
                foreach (DirectoryInfo idi in dis)
                {
                    FormatPathRecursively(idi.FullName.Substring(idi.FullName.IndexOf("Assets")), ignoreList, fpp);
                }
            }
            else if (File.Exists(path))
            {
                ad.needToCheck = false;
                importerHandler(ad);
            }
        }