/// <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"); }
/// <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); }
/// <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); }