【微信小游戲】CocosCreator 分包


參考:

cocos文檔-小游戲分包

 

1. 為了加快首頁顯示速度,減小主包大小。

2. 微信主包限制4M,所有分包總大小限制16M。

基於以上兩點,需要將多余資源放到分包進行加載。

 

選擇需要分包的文件夾,這里隨便選個測試用的texture文件夾,里面有幾張圖片。

 

 

選擇目標平台為微信小游戲,壓縮類型小游戲分包,bundle名稱為testTexture。

 

 

構建發布微信小游戲后,用微信開發者工具打開,在game.json中可以看到分包的配置,里面已經有testTexture這個分包了。

 

 

加載分包並顯示分包中一張圖片

 cc.assetManager.loadBundle("testTexture", (err, bundle) => {
            cc.assetManager.getBundle("testTexture").load("common/button/du_btn_home",cc.SpriteFrame, (err, asset: cc.SpriteFrame) => {
                let node: cc.Node = new cc.Node();
                let sp: cc.Sprite = node.addComponent(cc.Sprite);
                sp.spriteFrame = asset;
                this.node.addChild(node);
      });
});

 

 

 一 微信的分包加載接口loadSubpackage

微信加載分包本使用的是微信提供的loadSubpackage接口,但是cocos貌似已經做了兼容處理,讓loadBundle加載分包既可以在web中使用,也可以在微信小游戲中使用。

 

二 resource也是分包

在game.json中可以看到resouce也是一個分包,resource屬於內置的bundle,所以也是一個分包。

resource並不會增加主包加載大小,游戲首先會加載resource的資源配置文件,不會加載里面的圖片/聲音/骨骼/json配置等等資源。

等需要使用resource的資源時,用戶主動調用cc.resource.load去進行加載。

 

三 不是resource也不是分包的資源

放在resource外部的資源,沒有設置為分包,那么這份資源只有存在依賴加載關系的時候,才會被打包進項目。

例如resouce外面有張圖片A, 在resource/login/lognScene.prefab中被使用到,存在依賴關系,則構建發布時,圖片A會被打包進resource分包中。

 


免責聲明!

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



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