private void Start() { #if UNITY_STANDALONE && !UNITY_EDITOR string[] args = Environment.GetCommandLineArgs(); List <ModelImportInfo> modelImportInfos = new List <ModelImportInfo>(); if (args != null && args.Length > 1) { int numArgs = args.Length - 1; for (int i = 0; i < numArgs; i++) { if (args[i + 1].StartsWith("-")) { if (args[i + 1] == "-scale") { if (i + 1 < numArgs) { float.TryParse(args[i + 2], NumberStyles.Float, CultureInfo.InvariantCulture.NumberFormat, out importScale); } i++; } if (args[i + 1] == "-out") { if (i + 1 < numArgs) { exportedFilePath = args[i + 2]; } i++; } if (args[i + 1] == "-rtt") { importAsRTT = true; } if (args[i + 1] == "-zup") { importZUp = true; } continue; } ModelImportInfo modelToImport = new ModelImportInfo(); modelToImport.path = args[i + 1]; modelToImport.name = Path.GetFileNameWithoutExtension(modelToImport.path); modelToImport.loaderOptions = new ImportOptions(); modelToImport.loaderOptions.modelScaling = importScale; modelToImport.loaderOptions.litDiffuse = importAsRTT; modelToImport.loaderOptions.zUp = importZUp; modelToImport.loaderOptions.reuseLoaded = false; modelImportInfos.Add(modelToImport); } autoExport = true; ImportModelListAsync(modelImportInfos.ToArray()); } #endif #if UNITY_ANDROID filePath = Application.persistentDataPath + "/models/OBJ/objtest_yup.obj"; exportedFilePath = Application.persistentDataPath + "/models/glTF"; Import(); #endif UpdateUI(); }
private void UpdateImportInfo(ModelImportInfo importInfo, GameObject gameObj) { importInfo.name = gameObj.name; if (importInfo.loaderOptions == null) { importInfo.loaderOptions = new ImportOptions(); } importInfo.loaderOptions.localPosition = gameObj.transform.localPosition; importInfo.loaderOptions.localEulerAngles = gameObj.transform.localRotation.eulerAngles; importInfo.loaderOptions.localScale = gameObj.transform.localScale; }
private void UpdateObject(GameObject gameObj, ModelImportInfo importInfo) { gameObj.name = importInfo.name; //game_object.transform.localScale = scale; if (importInfo.loaderOptions != null) { gameObj.transform.localPosition = importInfo.loaderOptions.localPosition; gameObj.transform.localRotation = Quaternion.Euler(importInfo.loaderOptions.localEulerAngles); gameObj.transform.localScale = importInfo.loaderOptions.localScale; } }
private void UpdateObjectList() { for (int i = 0; i < transform.childCount; i++) { Transform tr = transform.GetChild(i); ModelImportInfo info = objectList.Find(obj => obj.name == tr.name); if (info != null) { info.UpdateFrom(tr.gameObject); } } }
protected override void Start() { #if UNITY_STANDALONE #if !UNITY_EDITOR string[] args = Environment.GetCommandLineArgs(); if (args != null && args.Length > 1) { int numImports = args.Length - 1; for (int i = 0; i < numImports; i++) { if (args[i + 1].StartsWith("-")) { if (args[i + 1] == "-scale") { if (i + 1 < numImports) { float.TryParse(args[i + 2], out defaultImportOptions.modelScaling); } i++; } continue; } ModelImportInfo modelToImport = new ModelImportInfo(); modelToImport.path = args[i + 1]; modelToImport.name = Path.GetFileNameWithoutExtension(modelToImport.path); modelToImport.loaderOptions = new ImportOptions(); modelToImport.loaderOptions.modelScaling = defaultImportOptions.modelScaling; modelToImport.loaderOptions.zUp = defaultImportOptions.zUp; modelToImport.loaderOptions.reuseLoaded = false; objectsList.Add(modelToImport); } configFile = ""; ImportModelListAsync(objectsList.ToArray()); } else #endif { if (autoLoadOnStart) { Reload(); } } #else Debug.Log("Command line arguments not available, using default settings."); Reload(); #endif }
private void Start() { string[] args = Environment.GetCommandLineArgs(); if (args != null && args.Length > 1) { int numImports = args.Length - 1; for (int i = 0; i < numImports; i++) { if (args[i + 1].StartsWith("-")) { if (args[i + 1] == "-scale") { if (i + 1 < numImports) { float.TryParse(args[i + 2], out defaultScale); } i++; } continue; } ModelImportInfo modelToImport = new ModelImportInfo(); modelToImport.path = args[i + 1]; modelToImport.name = Path.GetFileNameWithoutExtension(modelToImport.path); modelToImport.loaderOptions = new ImportOptions(); modelToImport.loaderOptions.modelScaling = defaultScale; modelToImport.loaderOptions.zUp = defaultZUp; modelToImport.loaderOptions.reuseLoaded = false; objectList.Add(modelToImport); } configFile = ""; ImportModelListAsync(objectList.ToArray()); } else { Reload(); } }