diff --git a/Assets/VRM.Samples/Editor/VRMExportUnityPackage.cs b/Assets/VRM.Samples/Editor/VRMExportUnityPackage.cs deleted file mode 100644 index 93af2be1c..000000000 --- a/Assets/VRM.Samples/Editor/VRMExportUnityPackage.cs +++ /dev/null @@ -1,241 +0,0 @@ -using System; -using System.Linq; -using System.Collections.Generic; -using System.IO; -using UnityEditor; -#if UNITY_2018_1_OR_NEWER -using UnityEditor.Build.Reporting; -#endif -using UnityEngine; - - -namespace VRM -{ - public static class VRMExportUnityPackage - { - static string GetDesktop() - { - return Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "/VRM"; - } - - const string DATE_FORMAT = "yyyyMMdd"; - const string PREFIX = "UniVRM"; - - static string System(string dir, string fileName, string args) - { - // Start the child process. - var p = new System.Diagnostics.Process(); - // Redirect the output stream of the child process. - p.StartInfo.UseShellExecute = false; - p.StartInfo.RedirectStandardOutput = true; - p.StartInfo.RedirectStandardError = true; - p.StartInfo.FileName = fileName; - p.StartInfo.Arguments = args; - p.StartInfo.WorkingDirectory = dir; - if (!p.Start()) - { - return "ERROR"; - } - // Do not wait for the child process to exit before - // reading to the end of its redirected stream. - // p.WaitForExit(); - // Read the output stream first and then wait. - string output = p.StandardOutput.ReadToEnd(); - string err = p.StandardError.ReadToEnd(); - p.WaitForExit(); - - if (string.IsNullOrEmpty(output)) - { - return err; - } - return output; - } - - //const string GIT_PATH = "C:\\Program Files\\Git\\mingw64\\bin\\git.exe"; - const string GIT_PATH = "C:\\Program Files\\Git\\bin\\git.exe"; - - static string GetGitHash(string path) - { - return System(path, "git.exe", "rev-parse HEAD").Trim(); - } - -#if false - [MenuItem("VRM/git")] - static void X() - { - var path = Application.dataPath; - Debug.LogFormat("{0} => '{1}'", path, GetGitHash(path)); - } -#endif - - static string GetPath(string folder, string prefix) - { - //var date = DateTime.Today.ToString(DATE_FORMAT); - - var path = string.Format("{0}/{1}-{2}_{3}.unitypackage", - folder, - prefix, - VRMVersion.VERSION, - GetGitHash(Application.dataPath + "/VRM").Substring(0, 4) - ).Replace("\\", "/"); - - return path; - } - - static IEnumerable EnumerateFiles(string path, Func isExclude=null) - { - path = path.Replace("\\", "/"); - - if (Path.GetFileName(path).StartsWith(".git")) - { - yield break; - } - - if (isExclude != null && isExclude(path)) - { - yield break; - } - - if (Directory.Exists(path)) - { - foreach (var child in Directory.GetFileSystemEntries(path)) - { - foreach (var x in EnumerateFiles(child, isExclude)) - { - yield return x; - } - } - } - else - { - if (Path.GetExtension(path).ToLower() == ".meta") - { - yield break; - } - - yield return path; - } - } - - public static bool Build(string[] levels) - { - var buildPath = Path.GetFullPath(Application.dataPath + "/../build/build.exe"); - Debug.LogFormat("{0}", buildPath); - var build = BuildPipeline.BuildPlayer(levels, - buildPath, - BuildTarget.StandaloneWindows, - BuildOptions.None - ); -#if UNITY_2018_1_OR_NEWER - var iSuccess = build.summary.result != BuildResult.Succeeded; -#else - var iSuccess = !string.IsNullOrEmpty(build); -#endif - return iSuccess; - } - - public static bool BuildTestScene() - { - var levels = new string[] { "Assets/VRM.Samples/Scenes/VRMRuntimeLoaderSample.unity" }; - return Build(levels); - } - -#if VRM_DEVELOP - [MenuItem(VRMVersion.VRM_VERSION + "/Export unitypackage")] -#endif - public static void CreateUnityPackageWithBuild() - { - var folder = GetDesktop(); - if (!Directory.Exists(folder)) - { - Directory.CreateDirectory(folder); - } - - CreateUnityPackage(folder, true); - } - - public static void CreateUnityPackage() - { - CreateUnityPackage(Path.GetFullPath(Path.Combine(Application.dataPath, "..")), false); - } - - static bool EndsWith(string path, params string[] exts) - { - foreach(var ext in exts) - { - if (path.EndsWith(ext)) - { - return true; - } - if(path.EndsWith(ext + ".meta")) - { - return true; - } - } - - return false; - } - - static bool ExcludeCsProj(string path) - { - /* - if(EndsWith(path, "csproj", "sln", "csproj.user", "psess", "bin", "obj", "vsp", "vspx")) - { - return true; - } - */ - if (path.EndsWith("/UniJSON/Profiling.meta")) - { - return true; - } - if (path.EndsWith("/UniJSON/Profiling")) - { - return true; - } - if (path.EndsWith("/UniGLTF/doc")) - { - return true; - } - if (path.EndsWith("/UniHumanoid/doc")) - { - return true; - } - - return false; - } - - public static void CreateUnityPackage(string folder, bool build) - { - if (build) - { - // まずビルドする - /*var iSuccess = */BuildTestScene(); - } - - var path = GetPath(folder, PREFIX); - if (File.Exists(path)) - { - Debug.LogErrorFormat("{0} is already exists", path); - return; - } - - // 本体 - { - var files = EnumerateFiles("Assets/VRM", ExcludeCsProj).ToArray(); - Debug.LogFormat("{0}", string.Join("", files.Select((x, i) => string.Format("[{0:##0}] {1}\n", i, x)).ToArray())); - AssetDatabase.ExportPackage(files - , path, - ExportPackageOptions.Default); - } - - // サンプル - { - AssetDatabase.ExportPackage(EnumerateFiles("Assets/VRM.Samples").Concat(EnumerateFiles("Assets/StreamingAssets")).ToArray() - , GetPath(folder, PREFIX + "-RuntimeLoaderSample"), - ExportPackageOptions.Default); - } - - Debug.LogFormat("exported: {0}", path); - } - } -} diff --git a/Assets/VRM.Samples/Editor/VRMExportUnityPackage.cs.meta b/Assets/VRM.Samples/Editor/VRMExportUnityPackage.cs.meta deleted file mode 100644 index ab6531f74..000000000 --- a/Assets/VRM.Samples/Editor/VRMExportUnityPackage.cs.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: 6895a43269f0daf4eab06931c9a7724c -timeCreated: 1521714822 -licenseType: Free -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: