public static void BuildStandalonePlayer()
        {
            var outputPath = UnityEditor.EditorUtility.SaveFolderPanel("Choose Location of the Built Game", "", "");

            if (outputPath.Length == 0)
            {
                return;
            }

            string[] levels = GetLevelsFromBuildSettings();
            if (levels.Length == 0)
            {
                Debug.Log("Nothing to build.");
                return;
            }
            string targetName = GetBuildTargetName(EditorUserBuildSettings.activeBuildTarget);

            if (targetName == null)
            {
                return;
            }

            // Build and copy AssetBundles.
            AssetBundleBuilder.BuildAssetBundles();
            AssetBundleBuilder.BuildBundleScenes();
            AssetBundleBuilder.CopyAssetBundlesTo(Path.Combine(Application.streamingAssetsPath, Utility.AssetBundlesOutputPath));
            AssetDatabase.Refresh();

            BuildOptions option = EditorUserBuildSettings.development ? BuildOptions.Development : BuildOptions.None;

            MoveResourcesToR();
            BuildPipeline.BuildPlayer(levels, outputPath + targetName, EditorUserBuildSettings.activeBuildTarget, option);
            MoveRToResources();
        }
        public static void BuildPlayer()
        {
            var outputPath = UnityEditor.EditorUtility.SaveFolderPanel("Choose Location of the Built Game", "", "");

            if (outputPath.Length == 0)
            {
                return;
            }
            string[] levels = GetLevelsFromBuildSettings();
            if (levels.Length == 0)
            {
                Debug.Log("Nothing to build.");
                return;
            }
            string targetName = GetBuildTargetName(EditorUserBuildSettings.activeBuildTarget);

            if (targetName == null)
            {
                return;
            }
            AssetBundleBuilder.BuildAssetBundles();
            WriteServerURL();
            BuildOptions option = EditorUserBuildSettings.development ? BuildOptions.Development : BuildOptions.None;

            BuildPipeline.BuildPlayer(levels, outputPath + targetName, EditorUserBuildSettings.activeBuildTarget, option);
        }
Exemple #3
0
        private void OnGUI()
        {
            //if (mOptionsData == null)
            //{
            //    mOptionsData = LoadFile();
            //}

            #region options
            //if (GTEditorHelper.DrawHeader("Options"))
            //{
            //    GTEditorHelper.BeginContents(false);
            //    GUILayout.BeginHorizontal(GUILayout.Width(300));
            //    EditorGUILayout.LabelField("Current Mode", GUILayout.Width(100));
            //    mOptionsData.AssetBundleMode = (AssetBundleMode)EditorGUILayout.EnumPopup(mOptionsData.AssetBundleMode, GUILayout.Width(180));
            //    GUILayout.EndHorizontal();

            //    GTEditorHelper.EndContents();

            //    //try
            //    //{
            //    //    EditorUtility.SetDirty(mOptionsData);
            //    //}
            //    //catch { }
            //}
            #endregion

            #region build operation
            GUILayout.Space(3.0f);

            if (EditorUtility.DrawHeader("Builder"))
            {
                EditorUtility.BeginContents(false);
                if (GUILayout.Button("Build Scenes", GUILayout.Width(295)))
                {
                    AssetBundleBuilder.BuildBundleScenes();
                }
                if (GUILayout.Button("Build AssetBundles", GUILayout.Width(295)))
                {
                    AssetBundleBuilder.BuildAssetBundles();
                }
                if (GUILayout.Button("Build Standalone Player", GUILayout.Width(295)))
                {
                    AssetBundleBuilder.BuildStandalonePlayer();
                }
                EditorUtility.EndContents();
            }
            #endregion


            #region ease mode
            GUILayout.Space(3.0f);
            if (EditorUtility.DrawHeader("Ease"))
            {
                EditorUtility.BeginContents(false);
                if (GUILayout.Button("Move Resources To R", GUILayout.Width(295)))
                {
                    AssetBundleBuilder.MoveResourcesToR();
                }
                if (GUILayout.Button("Move R TO Resources", GUILayout.Width(295)))
                {
                    AssetBundleBuilder.MoveRToResources();
                }
                EditorUtility.EndContents();
            }
            #endregion
        }