public static GetBuildTarget ( ) : BuildTarget, | ||
return | BuildTarget, |
public static void BuildSceneSpecify(PackagePlatform.PlatformType rBuildPlatform) { if (!Directory.Exists(PackagePlatform.sceneDirectoryPath)) { Debug.Log("没有需要打包的场景文件"); return; } PackagePlatform.platformCurrent = rBuildPlatform; string rOutPath = PackagePlatform.GetSceneBundlePath(); if (Directory.Exists(rOutPath) == false) { Directory.CreateDirectory(rOutPath); } //修改PackagePlatform.Instance.sceneDirectoryPath var guids = AssetDatabase.FindAssets("t:scene", new string[] { PackagePlatform.sceneDirectoryPath }); var rInPaths = new string[guids.Length]; var rCount = 0; foreach (var guid in guids) { var rPath = rInPaths[rCount] = AssetDatabase.GUIDToAssetPath(guid); var rName = rPath.Substring(rPath.LastIndexOf('/') + 1, rPath.LastIndexOf('.') - rPath.LastIndexOf('/') - 1); var rfullPath = rOutPath + "/" + rName.ToLower() + "." + Global.BundleExtName; BuildPipeline.BuildPlayer(new string[] { rPath }, rfullPath, PackagePlatform.GetBuildTarget(), BuildOptions.BuildAdditionalStreamedScenes); Debug.Log("build scene:>" + rPath); rCount++; } }
void Package() { var temp = EditorUserBuildSettings.activeBuildTarget; EditorUserBuildSettings.SwitchActiveBuildTarget(PackagePlatform.GetBuildTarget()); //切换贴图格式 SwitchTextureFormat(); //打包其他文件 DefaultPackage.BuildDefaultSpecify(PackagePlatform.platformCurrent); //打包Assetbundle AssetBundlePackage.BuildAssetbundlesSpecify(PackagePlatform.platformCurrent); //打包场景 if (needPackageScene) { PackagePlatform.sceneDirectoryPath = rawScenePath; SceneBundlePackage.BuildSceneSpecify(PackagePlatform.platformCurrent); } //生成版本号 var minor = int.Parse(minorVersion); minor++; minorVersion = minor.ToString(); PackageUtil.GeneratorVersion(mainVersion, minorVersion); //生成文件表 PackageUtil.GeneratorChecklist(); EditorUserBuildSettings.SwitchActiveBuildTarget(temp); SavePackageConfig(); }
public static void BuildAssetbundlesSpecify(PackagePlatform.PlatformType rBuildPlatform) { PackagePlatform.platformCurrent = rBuildPlatform; List <AssetBundleBuild> abbList = GeneratorAssetbundleEntry(); if (abbList == null) { Debug.Log("没有找到需要打包的资源"); return; } string rPath = PackagePlatform.GetAssetBundlesPath(); if (Directory.Exists(rPath) == false) { Directory.CreateDirectory(rPath); } BuildPipeline.BuildAssetBundles(rPath, abbList.ToArray(), BuildAssetBundleOptions.None, PackagePlatform.GetBuildTarget()); }