private void CreateConfigurator(Model.NodeData node, Type importerType) { var configFileGUID = ImporterConfiguratorUtility.FindSettingTemplateFileGUID(importerType); var configFilePath = AssetDatabase.GUIDToAssetPath(configFileGUID); if (string.IsNullOrEmpty(configFilePath)) { throw new NodeException(node.Name + " :Setting template file not found. Incoming file type must be properly configured with CustomImporterConfigurator.", node); } var samplingDirectoryPath = FileUtility.PathCombine(Model.Settings.Path.SavedSettingsPath, "ImportSettings", node.Id); if (!Directory.Exists(samplingDirectoryPath)) { Directory.CreateDirectory(samplingDirectoryPath); } IAssetImporterConfigurator configurator = ImporterConfiguratorUtility.CreateConfigurator(importerType); if (configurator == null) { throw new NodeException(node.Name + " :Failed to create importer configurator for " + importerType.FullName, node); } m_configuratorInstance.SetDefaultValue(configurator); var targetFilePath = FileUtility.PathCombine(samplingDirectoryPath, Path.GetFileName(configFilePath)); FileUtility.CopyFile(configFilePath, targetFilePath); AssetDatabase.Refresh(ImportAssetOptions.ImportRecursive); m_referenceAssetGuid = AssetDatabase.AssetPathToGUID(targetFilePath); m_configureImporterFor = null; }