Unity 5 官方打包管理工具 Asset Bundle Manager
阿新 • • 發佈:2017-11-30
keyword -s 有一個 unity3d argument 模式 -c == article
http://blog.csdn.net/suifcd/article/details/51570003
Unity5在Asset bundle 打包管理上采用了全新的方式,不需要再對每個文件進行MD5比對,unity已經幫我們做好了,對需要打包的資源AssetBundle屬性就行了,同事Unity還提供了一個打包管理工具 Asset Bundle Manager。
官方文檔對這個工具的說明及使用方式,地址
官方的工具項目工程地址
說下使用方式,工具提供了一鍵打包,本地加載模擬,網絡加載模擬。
打包很簡單,設定好屬性,直接打包就行。本地加載模擬,右鍵選擇Simulation mode即可切換到此模式進行測試。
還有一個是本地網絡加載模擬,在本地搭建一個資源服務器,客戶端連接這個服務器來進行動態的加載資源,但是實際測試中發現會報錯,經過修改,終於好了。
首先需要在BuildScript.cs裏修改變量為
public static string overloadedDevelopmentServerURL = "http://192.168.1.101:7888/";
具體的IP要根據自己的電腦來設定
然後修改LaunchAssetBundleServer.cs文件,主要是Run()函數,修改後的Run函數如下
static void Run ()
{
string pathToAssetServer = Path.Combine(Application.dataPath, "AssetBundleManager/Editor/AssetBundleServer.exe");
string pathToApp = Application.dataPath.Substring(0, Application.dataPath.LastIndexOf(‘/‘));
pathToAssetServer = pathToAssetServer.Replace("/", "\\");
pathToApp = pathToApp.Replace("/", "\\");
KillRunningAssetBundleServer();
BuildScript.WriteServerURL();
string args = Path.Combine(pathToApp, "AssetBundles");
ProcessStartInfo startInfo = new ProcessStartInfo(pathToAssetServer); ;
startInfo.Arguments = args;
Process launchProcess = Process.Start(startInfo);
if (launchProcess == null || launchProcess.HasExited == true || launchProcess.Id == 0)
{
//Unable to start process
UnityEngine.Debug.LogError ("Unable Start AssetBundleServer process");
}
else
{
//We seem to have launched, let‘s save the PID
instance.m_ServerPID = launchProcess.Id;
}
}
如此便可正常使用了。
項目工程裏有資源場景的加載示例,有興趣的可以自行研究。
Unity 5 官方打包管理工具 Asset Bundle Manager