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