Unity3D开发之----将预设体Prefab压缩成AssetBundle文件
我在寫這邊文章之前參照了如下文章:
https://www.jianshu.com/p/5d4145cd900c
----------------------------我是分割線--------------------------
Asset Bundle的作用:
1.AssetBundle是一個壓縮包包含模型、貼圖、預制體、聲音、甚至整個場景,可以在游戲運行的時候被加載;
2.AssetBundle自身保存著互相的依賴關系;
3.壓縮包可以使用LZMA和LZ4壓縮算法,減少包大小,更快的進行網絡傳輸;
4.把一些可以下載內容放在AssetBundle里面,可以減少安裝包的大小;
什么是AssetBundle
可以歸為兩點:
1,它是一個存在于硬盤上的文件。可以稱之為壓縮包。這個壓縮包可以認為是一個文件夾,里面包含了多個文件。這些文件可以分為兩類:serialized file 和 resource files。(序列化文件和源文件)
serialized file:資源被打碎放在一個對象中,最后統一被寫進一個單獨的文件(只有一個)
resource files:某些二進制資源(圖片、聲音)被單獨保存,方便快速加載
2,它是一個AssetBundle對象,我們可以通過代碼從一個特定的壓縮包加載出來的對象。這個對象包含了所有我們當初添加到這個壓縮包里面的內容,我們可以通過這個對象加載出來使用。
如何操作?
1.首先,先將游戲物體設置成Prefab預設體(在U3D中創建游戲物體,然后在Assets文件夾下創建一個Prefab文件夾,并將物體拖拽到該文件夾中,就形成了預設體)
然后對該預設體進行編輯:
這里的含義是:生成的AssetBundle文件會生成在scene文件夾下的model.ab文件中,用戶可以自定義。
2.在Assets目錄下創建一個Editor文件夾,并在Editor文件夾下創建編輯擴展腳本(一定要在Editor文件夾下創建編輯擴展腳本,否則不會生效!!!)
這里名字隨便命名,注意規范!
3.該腳本代碼如下:
編寫好代碼之后,U3D的菜單欄會生成一個菜單項:
總結
以上是生活随笔為你收集整理的Unity3D开发之----将预设体Prefab压缩成AssetBundle文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Unity实战100例】文件压缩Zip
- 下一篇: pythonwhile循环语句_Pyth