public InputConfiguration() { if (Application.isBatchMode) { GetBatchModeArgs(); } else { RootDirectory = EditorUtility.OpenFolderPanel("Select model root folder with ModelInfo.json", Application.dataPath, ""); OutputDir = EditorUtility.OpenFolderPanel("Select model output directory", Application.dataPath, ""); } if (string.IsNullOrEmpty(OutputDir)) { OutputDir = Application.dataPath + "/StreamingAssets/"; Log.Info("OutputDir is empty, setting it to: " + OutputDir); } if (string.IsNullOrEmpty(LogFileDir)) { LogFileDir = Application.persistentDataPath + "/PreprocessingLogs/"; Log.Info("LogFile is empty, setting it to: " + LogFileDir); } LoggingConfiguration.Configure(LogFileDir); if (string.IsNullOrEmpty(RootDirectory)) { if (Application.isBatchMode) { DisplayHelp(); } throw Log.ThrowError("Path cannot be null!", new IOException()); } }
private ModelImport.ModelImporter InitializeModelImporter(string modelType, ModelConverter modelConverter, string rootDirectory) { switch (modelType) { case "UnityNative": return(new GOModel(rootDirectory)); case "ConversionRequired": modelConverter.Convert(rootDirectory); return(new ConvertedModel(modelConverter.OutputRootDir)); case "ConvertedModel": return(new ConvertedModel(rootDirectory)); case "VolumetricModel": return(new VolumetricModel(rootDirectory)); default: throw Log.ThrowError("Incorrect ModelImporter type declared!", new IOException()); } }