Esempio n. 1
0
    void OnPreprocessTexture()
    {
        TextureImporter importer = assetImporter as TextureImporter;

        settingsAsset = AssetDatabase.LoadAssetAtPath <AssetsPreProcessor>(path);

        if (settingsAsset == null || settingsAsset.importActions.Count == 0)
        {
            return;
        }

        if (File.Exists(importer.assetPath + ".meta"))
        {
            //Debug.Log (textureImporter.assetPath + ".meta" + " already exists");
        }
        else
        {
            List <int> actionsToApply = FilterActionsToApply(importer.assetPath);

            if (importer != null)
            {
                foreach (int element in actionsToApply)
                {
                    if (settingsAsset.importActions[element].newImportSettings.overrideTextures)
                    {
                        importer.textureType             = settingsAsset.importActions[element].newImportSettings.textureSettings.type;
                        importer.textureShape            = settingsAsset.importActions[element].newImportSettings.textureSettings.shape;
                        importer.sRGBTexture             = settingsAsset.importActions[element].newImportSettings.textureSettings.sRgb;
                        importer.alphaSource             = settingsAsset.importActions[element].newImportSettings.textureSettings.alphaSource;
                        importer.alphaIsTransparency     = settingsAsset.importActions[element].newImportSettings.textureSettings.alphaIsTransparency;
                        importer.isReadable              = settingsAsset.importActions[element].newImportSettings.textureSettings.readWrite;
                        importer.mipmapEnabled           = settingsAsset.importActions[element].newImportSettings.textureSettings.generateMipMaps;
                        importer.mipmapFilter            = settingsAsset.importActions[element].newImportSettings.textureSettings.mipMapFilter;
                        importer.mipMapsPreserveCoverage = settingsAsset.importActions[element].newImportSettings.textureSettings.mipMapsPreserveCoverage;
                        importer.fadeout        = settingsAsset.importActions[element].newImportSettings.textureSettings.fadeoutMipMaps;
                        importer.wrapMode       = settingsAsset.importActions[element].newImportSettings.textureSettings.wrapMode;
                        importer.filterMode     = settingsAsset.importActions[element].newImportSettings.textureSettings.filterMode;
                        importer.anisoLevel     = settingsAsset.importActions[element].newImportSettings.textureSettings.anisoLevel;
                        importer.maxTextureSize = (int)settingsAsset.importActions[element].newImportSettings.textureSettings.maxSize;
                        // ? textureImporter.resizeAlgorithm = settingsAsset.actions[element].settings.textures.resizeAlgorithm;
                        //textureImporter.textureFormat = settingsAsset.actions[element].settings.textures.quality;
                        importer.textureCompression  = settingsAsset.importActions[element].newImportSettings.textureSettings.format;
                        importer.crunchedCompression = settingsAsset.importActions[element].newImportSettings.textureSettings.useCrunchCompression;
                        importer.compressionQuality  = settingsAsset.importActions[element].newImportSettings.textureSettings.compressorQuality;
                    }
                }
            }
        }
    }
Esempio n. 2
0
    void OnPreprocessAudio()
    {
        AudioImporter importer = assetImporter as AudioImporter;

        settingsAsset = AssetDatabase.LoadAssetAtPath <AssetsPreProcessor>(path);

        if (settingsAsset == null || settingsAsset.importActions.Count == 0)
        {
            return;
        }

        if (File.Exists(importer.assetPath + ".meta"))
        {
            //Debug.Log (audioImporter.assetPath + ".meta" + " already exists");
        }
        else
        {
            List <int> actionsToApply = FilterActionsToApply(importer.assetPath);

            if (importer != null)
            {
                foreach (int element in actionsToApply)
                {
                    if (settingsAsset.importActions[element].newImportSettings.overrideAudios)
                    {
                        AudioImporterSampleSettings sampleSettings = new AudioImporterSampleSettings();
                        sampleSettings.loadType           = settingsAsset.importActions[element].newImportSettings.audioSettings.loadType;
                        sampleSettings.compressionFormat  = settingsAsset.importActions[element].newImportSettings.audioSettings.compressionFormat;
                        sampleSettings.quality            = ((float)settingsAsset.importActions[element].newImportSettings.audioSettings.quality * 0.01f);
                        sampleSettings.sampleRateSetting  = settingsAsset.importActions[element].newImportSettings.audioSettings.sampleRateSetting;
                        sampleSettings.sampleRateOverride = (uint)settingsAsset.importActions[element].newImportSettings.audioSettings.sampleRate;

                        importer.forceToMono      = settingsAsset.importActions[element].newImportSettings.audioSettings.forceToMono;
                        importer.loadInBackground = settingsAsset.importActions[element].newImportSettings.audioSettings.loadInBackground;
                        importer.ambisonic        = settingsAsset.importActions[element].newImportSettings.audioSettings.ambisonic;
                        importer.preloadAudioData = settingsAsset.importActions[element].newImportSettings.audioSettings.preloadAudioData;
                        // ? audioImporter.normalize = settingsAsset.actions[element].settings.audios.normalize;
                        importer.defaultSampleSettings = sampleSettings;
                    }
                }
            }
        }
    }
Esempio n. 3
0
    public static AssetsPreProcessor Create_AssetsPreProcessor_Settings()
    {
        AssetsPreProcessor asset;

        if (File.Exists(path))
        {
            asset = AssetDatabase.LoadAssetAtPath <AssetsPreProcessor>(path);
        }
        else
        {
            asset = ScriptableObject.CreateInstance <AssetsPreProcessor> ();
            AssetDatabase.CreateAsset(asset, path);
            AssetDatabase.SaveAssets();
        }

        EditorGUIUtility.PingObject(asset);
        Selection.activeObject = asset;
        return(asset);
    }
Esempio n. 4
0
    void OnPreprocessModel()
    {
        ModelImporter importer = assetImporter as ModelImporter;

        settingsAsset = AssetDatabase.LoadAssetAtPath <AssetsPreProcessor>(path);

        if (settingsAsset == null || settingsAsset.importActions.Count == 0)
        {
            return;
        }

        if (File.Exists(importer.assetPath + ".meta"))
        {
            //Debug.Log(modelImporter.assetPath + ".meta" + " already exists");
        }
        else
        {
            List <int> actionsToApply = FilterActionsToApply(importer.assetPath);

            if (importer != null)
            {
                foreach (int element in actionsToApply)
                {
                    bool useImportSettings = true;

                    if (settingsAsset.importActions[element].newImportSettings.overrideModels)
                    {
                        // MESHES
                        //if (settingsAsset.importActions[element].newImportSettings.modelSettings.useMeshesCustom) {
                        importer.globalScale  = settingsAsset.importActions[element].newImportSettings.modelSettings.scaleFactor;
                        importer.useFileUnits = settingsAsset.importActions[element].newImportSettings.modelSettings.useFileScale;
                        //modelImporter.fileScale = settingsAsset.actions[element].settings.models.fileScale;
                        importer.meshCompression     = settingsAsset.importActions[element].newImportSettings.modelSettings.meshCompression;
                        importer.isReadable          = settingsAsset.importActions[element].newImportSettings.modelSettings.readWriteEnabled;
                        importer.optimizeMesh        = settingsAsset.importActions[element].newImportSettings.modelSettings.optimizeMesh;
                        importer.importBlendShapes   = settingsAsset.importActions[element].newImportSettings.modelSettings.importBlendShapes;
                        importer.addCollider         = settingsAsset.importActions[element].newImportSettings.modelSettings.generateColliders;
                        importer.keepQuads           = settingsAsset.importActions[element].newImportSettings.modelSettings.keepQuads;
                        importer.weldVertices        = settingsAsset.importActions[element].newImportSettings.modelSettings.weldVertices;
                        importer.swapUVChannels      = settingsAsset.importActions[element].newImportSettings.modelSettings.swapUvs;
                        importer.generateSecondaryUV = settingsAsset.importActions[element].newImportSettings.modelSettings.generateLightmapUvs;
                        //}

                        // NORMALS & TANGENTS
                        //if (settingsAsset.importActions[element].newImportSettings.modelSettings.useNormalsCustom) {
                        importer.importNormals        = settingsAsset.importActions[element].newImportSettings.modelSettings.normals;
                        importer.normalSmoothingAngle = settingsAsset.importActions[element].newImportSettings.modelSettings.smoothingAngle;
                        importer.importTangents       = settingsAsset.importActions[element].newImportSettings.modelSettings.tangents;
                        //}

                        // MATERIALS
                        //if (settingsAsset.importActions[element].newImportSettings.modelSettings.useMaterialsCustom) {
                        importer.importMaterials = settingsAsset.importActions[element].newImportSettings.modelSettings.importMaterials;
                        //}

                        // RIG
                        //if (settingsAsset.importActions[element].newImportSettings.modelSettings.useRigCustom) {
                        importer.animationType = settingsAsset.importActions[element].newImportSettings.modelSettings.animationType;
                        //}

                        // ANIMATIONS
                        //if (settingsAsset.importActions[element].newImportSettings.modelSettings.useAnimationsCustom) {
                        importer.importAnimation = settingsAsset.importActions[element].newImportSettings.modelSettings.importAnimation;
                        //}
                    }
                }
            }
        }
    }
Esempio n. 5
0
 void OnEnable()
 {
     asset = AssetDatabase.LoadAssetAtPath <AssetsPreProcessor>(path);
 }