AssetBundleGraph.ImportSettingsConfigurator.IsEqual C# (CSharp) Method

IsEqual() public method

public IsEqual ( AssetImporter importer ) : bool
importer UnityEditor.AssetImporter
return bool
        public bool IsEqual(AssetImporter importer)
        {
            if(importer.GetType() != referenceImporter.GetType()) {
                throw new AssetBundleGraphException("Importer type does not match.");
            }

            if(importer.GetType() == typeof(UnityEditor.TextureImporter)) {
                return IsEqual(importer as UnityEditor.TextureImporter);
            }
            else if(importer.GetType() == typeof(UnityEditor.AudioImporter)) {
                return IsEqual(importer as UnityEditor.AudioImporter);
            }
            else if(importer.GetType() == typeof(UnityEditor.ModelImporter)) {
                return IsEqual(importer as UnityEditor.ModelImporter);
            }
            else {
                throw new AssetBundleGraphException("Unknown importer type found:" + importer.GetType());
            }
        }

Same methods

ImportSettingsConfigurator::IsEqual ( AudioImporter target ) : bool
ImportSettingsConfigurator::IsEqual ( ModelImporter target ) : bool
ImportSettingsConfigurator::IsEqual ( TextureImporter target ) : bool

Usage Example

        private void ApplyImportSetting(NodeData node, IEnumerable <PerformGraph.AssetGroups> incoming, Action <NodeData, string, float> progressFunc)
        {
            var referenceImporter = GetReferenceAssetImporter(node);
            var configurator      = new ImportSettingsConfigurator(referenceImporter);

            foreach (var ag in incoming)
            {
                foreach (var assets in ag.assetGroups.Values)
                {
                    foreach (var asset in assets)
                    {
                        var importer = AssetImporter.GetAtPath(asset.importFrom);
                        if (!configurator.IsEqual(importer))
                        {
                            if (progressFunc != null)
                            {
                                progressFunc(node, string.Format("Modifying {0}", asset.fileNameAndExtension), 0.5f);
                            }
                            configurator.OverwriteImportSettings(importer);
                            asset.TouchImportAsset();
                        }
                    }
                }
            }
        }
All Usage Examples Of AssetBundleGraph.ImportSettingsConfigurator::IsEqual