這邊只談包裝不含其他程式應用
首先你需要安裝Unity3D版本不一定要跟我一樣但我印象太新可能會用不了,大略說一下
它其實叫Assetbundle這種建置似乎已經被淘汰,但舊有遊戲Mod還是支持它比較多
新的建置叫Addressables可以看一下
比較專業的參考<-我不知道它能活多久,只是我沒找到改副檔名的方法所以我還是用第一種

我是以戀活建置Mod檔為基準來用的,
檔案處<-我不知道它能活多久
主要就點右上綠色下載ZIP解壓就是Unity專案,雖然下面寫5.6.2但實際要以下載後Unity讀取顯示的版本為主它會更新的,當然你也可以建置空白新專案
其實當你隨便點檔案右下角都會有個Assetbundle
1.代表輸出時的名稱
2.代表輸出時的附檔名
然後它需要新建一個腳本才能輸出,我不知道它為什麼不內建= =
創建一個C#Script
我是根據網上很多範例才成功的我不確定是否依定要在這個目錄、名稱
腳本名稱:BuildAssetBundles
----------------------------------------------請不要複製我
using System.IO;
using UnityEditor;
public class CreateAssetBundles
{
[MenuItem("Assets/BuildAssetBundles")]
static void BuildAssetBundles()
{
string path = "AssetBundles";
if(Directory.Exists(path) == false)
{
Directory.CreateDirectory(path);
}
BuildPipeline.BuildAssetBundles(path, BuildAssetBundleOptions.None, BuildTarget.StandaloneWindows64);
}
}
----------------------------------------------請不要複製我
我試了好幾個種腳本唯一成功的就這個,腳本編輯器會要微軟帳號如果你沒有就在1秒內快速貼上在它跳出前存檔也算XD
如果成功的話上方Assets會多一條與腳本同名的BuildAssetBundles
1.把要包一起的檔案複選
2.設定輸出檔名、副檔名,你打甚麼輸出就會叫什麼所以要Unity3D就打Unity3D
3.點擊後就會生成到專案裡
找到你專案的位置,應該會多AssetBundles這資料夾裡面會有剛剛生成的檔案
這樣第一種Assetbundle就算完成了
再來介紹第二種Addressables
它在上方Window->Package Manager
前面之所以讓你下載建置好的檔案是因為如果自己開的話是看不到這個選項的
如果你是自己開專案的找到Packages資料夾->開啟manifest.json
記事本開就可以了,把下方代碼貼入重開應該就會看到了
----------------------------------------------請不要複製我
{
"dependencies": {
"com.unity.addressables": "1.18.19",
"com.unity.ads": "2.0.8",
"com.unity.analytics": "3.2.3",
"com.unity.collab-proxy": "1.2.15",
"com.unity.package-manager-ui": "2.0.13",
"com.unity.purchasing": "2.2.1",
"com.unity.textmeshpro": "1.4.1",
"com.unity.modules.ai": "1.0.0",
"com.unity.modules.animation": "1.0.0",
"com.unity.modules.assetbundle": "1.0.0",
"com.unity.modules.audio": "1.0.0",
"com.unity.modules.cloth": "1.0.0",
"com.unity.modules.director": "1.0.0",
"com.unity.modules.imageconversion": "1.0.0",
"com.unity.modules.imgui": "1.0.0",
"com.unity.modules.jsonserialize": "1.0.0",
"com.unity.modules.particlesystem": "1.0.0",
"com.unity.modules.physics": "1.0.0",
"com.unity.modules.physics2d": "1.0.0",
"com.unity.modules.screencapture": "1.0.0",
"com.unity.modules.terrain": "1.0.0",
"com.unity.modules.terrainphysics": "1.0.0",
"com.unity.modules.tilemap": "1.0.0",
"com.unity.modules.ui": "1.0.0",
"com.unity.modules.uielements": "1.0.0",
"com.unity.modules.umbra": "1.0.0",
"com.unity.modules.unityanalytics": "1.0.0",
"com.unity.modules.unitywebrequest": "1.0.0",
"com.unity.modules.unitywebrequestassetbundle": "1.0.0",
"com.unity.modules.unitywebrequestaudio": "1.0.0",
"com.unity.modules.unitywebrequesttexture": "1.0.0",
"com.unity.modules.unitywebrequestwww": "1.0.0",
"com.unity.modules.vehicles": "1.0.0",
"com.unity.modules.video": "1.0.0",
"com.unity.modules.vr": "1.0.0",
"com.unity.modules.wind": "1.0.0",
"com.unity.modules.xr": "1.0.0"
}
}
----------------------------------------------請不要複製我
回到Package Manager介面
1.搜尋Addressables並安裝
2.安裝完後可能需要重啟Unity就會出現Asset Management->Addressables->Groups
就可以打開介面
右鍵新增一個新的群組
並重新命名
1.將要包進去的東西直接拖曳到剛剛建立的名稱上
2.這個是標籤分類應該會跟實際程式應用掛勾,如果只是打包不用也可以
1.從目錄可以找到剛剛的檔案
2.這邊可以看到輸出的目錄或改變,沒特定需求可以不用改
3.點擊Build->New Build->Default Build Script就算輸出完成
如圖所示它會輸出到專案內的
Library\com.unity.addressables\aa\Windows\StandaloneWindows64
最後順便用拆包工具測試沒問題,不過好像只能是.bundle沒得變,直接改副檔名拆還是讀的到我也不確定有無影響,所以我還是傾向第一種包法
如果裡面有代碼無效只能請估狗大神找其他版本試試了,我無法保證每個版本結果會一致。