Esempio n. 1
0
        private void OnGUI()
        {
            scrollPos = EditorGUILayout.BeginScrollView(scrollPos, GUILayout.Width(500), GUILayout.Height(400));
            GUILayout.BeginVertical();
            GUILayout.BeginHorizontal();
            GUILayout.Label("PersistanePath:");
            GUILayout.TextField(Application.persistentDataPath);
            GUILayout.EndHorizontal();
            if (GUILayout.Button("Go To Persistance"))
            {
                EditorUtility.RevealInFinder(Application.persistentDataPath);
            }

            DrawMenu();

            isEnableGenerateClass = GUILayout.Toggle(isEnableGenerateClass, "auto generate class");
            ResKitAssetsMenu.SimulateAssetBundleInEditor =
                GUILayout.Toggle(ResKitAssetsMenu.SimulateAssetBundleInEditor, "Simulation Mode");

            GUILayout.BeginHorizontal();
            GUILayout.Label("ResVersion:");
            resVersion = GUILayout.TextField(resVersion);
            GUILayout.EndHorizontal();

            if (GUILayout.Button("Build"))
            {
                AssetBundleExporter.BuildDataTable();
                BuildWithTarget(EditorUserBuildSettings.activeBuildTarget);
            }

            if (GUILayout.Button("ForceClear"))
            {
                ForceClear();
            }

            GUILayout.EndVertical();
            GUILayout.Space(50);

            EditorGUILayout.EndScrollView();

            GUILayout.BeginHorizontal();
            GUILayout.Label("Url:");
            mHttpUrl = GUILayout.TextField(mHttpUrl);
            GUILayout.EndHorizontal();

            if (GUILayout.Button("Http Get"))
            {
                ObservableWWW.Get(mHttpUrl).Subscribe(response => { Log.E(response); });
            }

            if (GUILayout.Button("Http Post"))
            {
//				WWWForm form = new WWWForm();
//				form.AddField("content", "123");
//				ObservableWWW.Post("http://127.0.0.1:8000/demo/save/", form)
//					.Subscribe(response => { Log.E(response); });

                ObservableWWW.Get("http://127.0.0.1:8000/demo/save/?content=" + new OK().ToJson()).Subscribe(response => { Log.E(response); });
            }
        }
Esempio n. 2
0
        private void OnGUI()
        {
            scrollPos = EditorGUILayout.BeginScrollView(scrollPos, GUILayout.Width(500), GUILayout.Height(400));
            GUILayout.BeginVertical();
            GUILayout.BeginHorizontal();
            GUILayout.Label("PersistanePath:");
            GUILayout.TextField(Application.persistentDataPath);
            GUILayout.EndHorizontal();
            if (GUILayout.Button("Go To Persistance"))
            {
                EditorUtility.RevealInFinder(Application.persistentDataPath);
            }

            DrawMenu();

            isEnableGenerateClass = GUILayout.Toggle(isEnableGenerateClass, "auto generate class");
            ResKitAssetsMenu.SimulateAssetBundleInEditor =
                GUILayout.Toggle(ResKitAssetsMenu.SimulateAssetBundleInEditor, "Simulation Mode");

            GUILayout.BeginHorizontal();
            GUILayout.Label("ResVersion:");
            resVersion = GUILayout.TextField(resVersion);
            GUILayout.EndHorizontal();

            if (GUILayout.Button("1.Gen Res Tree File"))
            {
                AssetBundleExporter.BuildDataTable();
            }

            if (GUILayout.Button("2.Build"))
            {
                AssetBundleExporter.BuildDataTable();
                BuildWithTarget(EditorUserBuildSettings.activeBuildTarget);
            }

            if (GUILayout.Button("ForceClear"))
            {
                ForceClear();
            }

            GUILayout.EndVertical();
            GUILayout.Space(50);

            EditorGUILayout.EndScrollView();


            GUILayout.BeginHorizontal();
            GUILayout.Label("Url:");
            mHttpUrl = GUILayout.TextField(mHttpUrl);
            GUILayout.EndHorizontal();

            if (GUILayout.Button("Http Test"))
            {
                ObservableWWW.Get(mHttpUrl).Subscribe(response => { Log.E(response); });
            }
        }
Esempio n. 3
0
        void OnGUI()
        {
            scrollPos = EditorGUILayout.BeginScrollView(scrollPos, GUILayout.Width(500), GUILayout.Height(400));
            GUILayout.BeginVertical();
            GUILayout.BeginHorizontal();
            GUILayout.Label("PersistanePath:");
            GUILayout.TextField(Application.persistentDataPath);
            GUILayout.EndHorizontal();
            if (GUILayout.Button("Go To Persistance"))
            {
                EditorUtility.RevealInFinder(Application.persistentDataPath);
            }

            DrawMenu();
            DrawAssetBundleList();

            isEnableGenerateClass = GUILayout.Toggle(isEnableGenerateClass, "auto generate class");



            GUILayout.BeginHorizontal();
            GUILayout.Label("ResVersion:");
            resVersion = GUILayout.TextField(resVersion);
            GUILayout.EndHorizontal();

            GUILayout.BeginHorizontal();
            GUILayout.Label("Project Tag:");
            projectTag = GUILayout.TextField(projectTag);

            GUILayout.EndHorizontal();

            if (GUILayout.Button("1.Gen Res Tree File"))
            {
                AssetBundleExporter.BuildDataTable();
            }

            if (GUILayout.Button("2.Build"))
            {
                AssetBundleExporter.BuildDataTable();
                BuildWithTarget(EditorUserBuildSettings.activeBuildTarget);
            }

            if (GUILayout.Button("ForceClear"))
            {
                ForceClear();
            }

            GUILayout.EndVertical();
            GUILayout.Space(50);

            EditorGUILayout.EndScrollView();
        }
Esempio n. 4
0
        public static void BuildAssetBundles(BuildTarget buildTarget)
        {
            // 先清空一下没用的 ab 名字
            AssetDatabase.RemoveUnusedAssetBundleNames();

            var defaultSubProjectData = new SubProjectData();
            var subProjectDatas       = SubProjectData.SearchAllInProject();

            SubProjectData.SplitAssetBundles2DefaultAndSubProjectDatas(defaultSubProjectData, subProjectDatas);

            // Choose the output path according to the build target.
            var outputPath = Path.Combine(ResKitAssetsMenu.AssetBundlesOutputPath, GetPlatformName());

            outputPath.CreateDirIfNotExists();

            BuildPipeline.BuildAssetBundles(outputPath, defaultSubProjectData.Builds.ToArray(),
                                            BuildAssetBundleOptions.ChunkBasedCompression, buildTarget);

            GenerateVersionConfig();

            var finalDir = Application.streamingAssetsPath + "/AssetBundles/" + GetPlatformName();

            finalDir.DeleteDirIfExists();
            finalDir.CreateDirIfNotExists();

            FileUtil.ReplaceDirectory(outputPath, finalDir);

            AssetBundleExporter.BuildDataTable(defaultSubProjectData.Builds.Select(b => b.assetBundleName).ToArray());

            foreach (var subProjectData in subProjectDatas)
            {
                outputPath = Path.Combine(ResKitAssetsMenu.AssetBundlesOutputPath + "/" + subProjectData.Name,
                                          GetPlatformName());
                outputPath.CreateDirIfNotExists();

                BuildPipeline.BuildAssetBundles(outputPath, subProjectData.Builds.ToArray(),
                                                BuildAssetBundleOptions.ChunkBasedCompression, buildTarget);
                finalDir = Application.streamingAssetsPath + "/" + subProjectData.Name + "/AssetBundles/" +
                           GetPlatformName();

                finalDir.DeleteDirIfExists();
                finalDir.CreateDirIfNotExists();

                FileUtil.ReplaceDirectory(outputPath, finalDir);
                AssetBundleExporter.BuildDataTable(subProjectData.Builds.Select(b => b.assetBundleName).ToArray(),
                                                   finalDir + "/");
            }

            AssetDatabase.Refresh();
        }
Esempio n. 5
0
        public static void BuildAssetBundles(BuildTarget buildTarget)
        {
            // Choose the output path according to the build target.
            var outputPath = Path.Combine(ResKitAssetsMenu.AssetBundlesOutputPath, GetPlatformName());

            outputPath.CreateDirIfNotExists();

            BuildPipeline.BuildAssetBundles(outputPath, BuildAssetBundleOptions.ChunkBasedCompression, buildTarget);

            GenerateVersionConfig();

            var finalDir = Application.streamingAssetsPath + "/AssetBundles/" + GetPlatformName();

            finalDir.DeleteDirIfExists();
            finalDir.CreateDirIfNotExists();

            FileUtil.ReplaceDirectory(outputPath, finalDir);

            AssetBundleExporter.BuildDataTable();
            AssetDatabase.Refresh();
        }
Esempio n. 6
0
        public static void BuildAssetBundles(BuildTarget buildTarget, string inputProjectTag)
        {
            if (string.IsNullOrEmpty(inputProjectTag))
            {
                projectTag = "putaogame";
            }
            else
            {
                projectTag = inputProjectTag;
            }
            SetProjectTag();

            // Choose the output path according to the build target.
            string outputPath = Path.Combine(QResSystemMark.AssetBundlesOutputPath, GetPlatformName());

            outputPath = outputPath + "/" + projectTag;

            IOExtension.CreateDirIfNotExists(outputPath);

            BuildPipeline.BuildAssetBundles(outputPath, BuildAssetBundleOptions.ChunkBasedCompression, buildTarget);

            List <string> finalzips  = PackZips(outputPath);
            List <string> finalFiles = PackQFiles(outputPath);

            GenerateVersionConfig(outputPath, finalzips, finalFiles);

            string finalDir = Application.streamingAssetsPath + "/AssetBundles/" + GetPlatformName() + "/" + projectTag;

            IOExtension.DeleteDirIfExists(finalDir);

            IOExtension.CreateDirIfNotExists(finalDir);

            FileUtil.ReplaceDirectory(outputPath, finalDir);

            AssetBundleExporter.BuildDataTable();

            AssetDatabase.Refresh();
        }