Ejemplo n.º 1
0
        /// <summary>
        /// シーンをビルドして起動する
        /// </summary>
        public void TestBuildAndRunScene()
        {
            // Outputフォルダを空にする。※毎回必ずビルドする。
            abUtility.ClearOutputDirectory();

            // シーンをビルドする
            LocalPreviewToolError error = BuildSceneToAssetBundle();

            if (error != null)
            {
                EditorUtility.DisplayDialog("Error.", error.GetErrorMessage(), "OK");
                return;
            }

            // シーンXMLを生成する。
            var sceneXml = stylyPluginUtility.GenerateSceneXMLforSceneOnly(targetScene);

            // シーンGUIDを生成する。
            var sceneGuid = abUtility.GenerateGUID();

            // テストモード独自プロトコルでファイルを出力する
            GenerateXmlAndCopyBuildedAssetData(sceneXml, sceneGuid);

            foreach (IPlatformUtility util in platformUtils)
            {
                // STYLYを起動する。
                var urlScheme = util.CreateURLScheme(sceneGuid, "testUser", true);
                var result    = util.StartSTYLY(urlScheme);
            }
            Dispose();

            EditorUtility.DisplayDialog("Success.", "STYLY will start soon.", "OK");
        }
Ejemplo n.º 2
0
        /// <summary>
        /// PrefabをビルドしてSTYLY Assetを作る
        /// </summary>
        /// <param name="prefab"></param>
        public bool BuildSTYLYAsset(GameObject prefab, BuildTarget buildTarget, string guid = null)
        {
            var abUtility = new AssetBundleUtility();

            if (guid == null)
            {
                guid = abUtility.GenerateGUID();
            }

            string outputPath = Path.Combine(OutputPath + "STYLY_ASSET", abUtility.GetPlatformName(buildTarget));

            var buildResult = abUtility.Build(guid, AssetDatabase.GetAssetPath(prefab), outputPath, buildTarget);

            return(buildResult != null);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// AssetBundleのビルドを実行する
        /// </summary>
        /// <param name="scenePath">シーンのパス</param>
        /// <param name="buildTarget">ビルドターゲット(プラットフォーム)</param>
        /// <param name="guid">アセットバンドルのGUID</param>
        /// <returns></returns>
        public bool BuildSTYLYSceneAsset(string scenePath, BuildTarget buildTarget, string guid = null)
        {
            Debug.Log("BuildSTYLYSceneAsset:guid:" + guid);
            var abUtility = new AssetBundleUtility();

            // プラットフォーム切換え
            abUtility.SwitchPlatformAndPlayerSettings(buildTarget);

            if (guid == null)
            {
                guid = abUtility.GenerateGUID();
            }

            string outputPath = Path.Combine(OutputPath + "STYLY_ASSET", abUtility.GetPlatformName(buildTarget));

            var buildResult = abUtility.Build(guid, scenePath, outputPath, buildTarget);

            return(buildResult != null);
        }