【插件】Cocos Creator JSZip壓縮


版本:2.4.2

 

參考:

Egret 壓縮插件

cocos論壇:用jszip解壓zip文件

GitHub:JsZip

cocos論壇:jszip入坑教程-新手指南

 

Demo下載地址:zipDemo

 

jszip的實際項目應用

游戲中有大量配置的情況下,文件會變得非常大,所以有些游戲會采用zip包壓縮解壓

例如如下游戲,將游戲配置config.json壓縮成zip包,加載后進行解壓使用

 

 

拿到他的配置壓縮包

 

 

將.bin改成.zip,進行解壓,得到游戲的所有json配置文件

 

 

未壓縮之前6M+

 

 

壓縮后文件 500KB+,壓縮后小了10倍左右。

 

 

 

在cocos中使用jszip

首先,在github上下載jszip庫

下載地址

 

將下載的jszip.min.js放在項目assets/libs下,將jszip.d.ts放在項目根目錄的libs下。 (jszip.d.ts在demo中)

 

 

將游戲的配置文件,多個json,壓縮成zip包,並將后綴zip改為bin,放在resources/config下

 

 

 

 代碼中加載bin文件,並解析獲取其中的游戲物品配置GameItem.json

const {ccclass, property} = cc._decorator;

@ccclass
export default class Helloworld extends cc.Component {

    onLoad(){
        //加載config.bin
        cc.resources.load("config/config", (err, assets:any)=>{
            //解析
            JSZip.loadAsync(assets._buffer).then((zip)=>{
                //獲取GameItem.json配置
                zip.file("GameItem.json").async("text").then((data)=>{
                    console.log(data);
                    //string轉成json格式
                    let json = JSON.parse(data);
                    console.log(json["1"].name);
                })
            });
       })
    }
}

  

加載解析成功,輸出

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM