Exemplo n.º 1
0
        private static bool GenerateIcon(GenerateIconsWithMipLevels.InputData inputData, string baseName, List <string> assetPathsOfAllIcons, Dictionary <int, Texture2D> mipTextures, FileInfo sourceFileInfo)
        {
            string text = inputData.targetFolder + "/" + baseName + " Icon.asset";
            bool   result;

            if (sourceFileInfo != null && File.Exists(text))
            {
                FileInfo fileInfo = new FileInfo(text);
                if (fileInfo.LastWriteTime > sourceFileInfo.LastWriteTime)
                {
                    result = false;
                    return(result);
                }
            }
            Debug.Log("Generating MIP levels for " + text);
            GenerateIconsWithMipLevels.EnsureFolderIsCreatedRecursively(Path.GetDirectoryName(text));
            Texture2D texture2D = GenerateIconsWithMipLevels.CreateIconWithMipLevels(inputData, baseName, assetPathsOfAllIcons, mipTextures);

            if (texture2D == null)
            {
                Debug.Log("CreateIconWithMipLevels failed");
                result = false;
            }
            else
            {
                texture2D.name = baseName + " Icon.png";
                AssetDatabase.CreateAsset(texture2D, text);
                inputData.generatedFileNames.Add(text);
                result = true;
            }
            return(result);
        }
Exemplo n.º 2
0
 private static void EnsureFolderIsCreatedRecursively(string targetFolder)
 {
     if (AssetDatabase.GetMainAssetInstanceID(targetFolder) == 0)
     {
         GenerateIconsWithMipLevels.EnsureFolderIsCreatedRecursively(Path.GetDirectoryName(targetFolder));
         Debug.Log("Created target folder " + targetFolder);
         AssetDatabase.CreateFolder(Path.GetDirectoryName(targetFolder), Path.GetFileName(targetFolder));
     }
 }