public static void ClearExternalObjects <T>(this ScriptedImporter importer) where T : UnityEngine.Object { foreach (var externalObject in importer.GetExternalObjectMap().Where(x => x.Key.type == typeof(T))) { importer.RemoveRemap(externalObject.Key); } AssetDatabase.WriteImportSettingsIfDirty(importer.assetPath); AssetDatabase.ImportAsset(importer.assetPath, ImportAssetOptions.ForceUpdate); }
public static void ClearExtarnalObjects(this ScriptedImporter importer) { foreach (var extarnalObject in importer.GetExternalObjectMap()) { importer.RemoveRemap(extarnalObject.Key); } AssetDatabase.WriteImportSettingsIfDirty(importer.assetPath); AssetDatabase.ImportAsset(importer.assetPath, ImportAssetOptions.ForceUpdate); }
public void ApplyRemap(ScriptedImporter importer) { foreach (var kv in m_editMap) { if (kv.Object != null) { importer.AddRemap(kv.ID, kv.Object); } else { importer.RemoveRemap(kv.ID); } } m_editMap.Clear(); AssetDatabase.WriteImportSettingsIfDirty(importer.assetPath); AssetDatabase.ImportAsset(importer.assetPath, ImportAssetOptions.ForceUpdate); }
/// <summary> /// Apply /// </summary> protected override void Apply() { foreach (var kv in m_editMap) { if (kv.Object != null) { m_importer.AddRemap(kv.ID, kv.Object); } else { m_importer.RemoveRemap(kv.ID); } } m_editMap.Clear(); AssetDatabase.WriteImportSettingsIfDirty(m_importer.assetPath); AssetDatabase.ImportAsset(m_importer.assetPath, ImportAssetOptions.ForceUpdate); base.Apply(); }
public static void ClearExternalObjects(ScriptedImporter importer, params Type[] targetTypes) { foreach (var targetType in targetTypes) { if (!typeof(UnityEngine.Object).IsAssignableFrom(targetType)) { throw new NotImplementedException(); } foreach (var(key, obj) in importer.GetExternalObjectMap()) { if (targetType.IsAssignableFrom(key.type)) { importer.RemoveRemap(key); } } } AssetDatabase.WriteImportSettingsIfDirty(importer.assetPath); AssetDatabase.ImportAsset(importer.assetPath, ImportAssetOptions.ForceUpdate); }