基础内容-5
主题包; 测试NoteVisual与NoteEffect; LookAt旋转动画与FlexibleBool 动画杂项 控制台初步
This commit is contained in:
62
Assets/Editor/AssetBundleComponent.cs
Normal file
62
Assets/Editor/AssetBundleComponent.cs
Normal file
@@ -0,0 +1,62 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using Ichni;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
|
||||
/// <summary>
|
||||
/// AssetBundle 打包工具
|
||||
/// </summary>
|
||||
public class BuildAssetBundle
|
||||
{
|
||||
private static string BuildPrepare()
|
||||
{
|
||||
// 打包AB输出路径
|
||||
string strABOutPAthDir = string.Empty;
|
||||
|
||||
// 获取“StreamingAssets”文件夹路径(不一定这个文件夹,可自定义)
|
||||
strABOutPAthDir = Application.streamingAssetsPath + "/ThemeBundles";
|
||||
|
||||
// 判断文件夹是否存在,不存在则新建
|
||||
if (Directory.Exists(strABOutPAthDir) == false)
|
||||
{
|
||||
Directory.CreateDirectory(strABOutPAthDir);
|
||||
}
|
||||
|
||||
return strABOutPAthDir;
|
||||
}
|
||||
|
||||
private static void GenerateAbstracts(AssetBundleManifest manifest)
|
||||
{
|
||||
List<string> themeBundles = manifest.GetAllAssetBundles().ToList();
|
||||
foreach (string bundle in themeBundles)
|
||||
{
|
||||
string uriAbs = Application.streamingAssetsPath + "/ThemeBundles/" + bundle + ".abs";
|
||||
Debug.Log(uriAbs);
|
||||
if (!ES3.FileExists(uriAbs))
|
||||
{
|
||||
ThemeBundleAbstract abs = new ThemeBundleAbstract(bundle);
|
||||
ES3.Save("ThemeBundleAbstract", abs, uriAbs);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[MenuItem("AssetBundleTools/BuildToWindows64")]
|
||||
public static void BuildToWindows64()
|
||||
{
|
||||
string uri = BuildPrepare() + "/Windows64";
|
||||
AssetBundleManifest manifestWin64 = BuildPipeline.BuildAssetBundles(uri, BuildAssetBundleOptions.None, BuildTarget.StandaloneWindows64);
|
||||
GenerateAbstracts(manifestWin64);
|
||||
}
|
||||
|
||||
[MenuItem("AssetBundleTools/BuildToOSX")]
|
||||
public static void BuildToOSX()
|
||||
{
|
||||
string uri = BuildPrepare() + "/OSX";
|
||||
AssetBundleManifest manifestOSX = BuildPipeline.BuildAssetBundles(uri, BuildAssetBundleOptions.None, BuildTarget.StandaloneOSX);
|
||||
GenerateAbstracts(manifestOSX);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user