如何在CocosCreator中使用JSZip压缩

作者:gamedaybyday 时间:2024-04-22 22:16:54 

CocosCreator版本:2.4.2

jszip的实际项目应用

游戏中有大量配置的情况下,文件会变得非常大,所以有些游戏会采用zip包压缩解压

例如如下游戏,将游戏配置config.json压缩成zip包,加载后进行解压使用

如何在CocosCreator中使用JSZip压缩

拿到他的配置压缩包

如何在CocosCreator中使用JSZip压缩

将.bin改成.zip,进行解压,得到游戏的所有json配置文件

如何在CocosCreator中使用JSZip压缩

未压缩之前6M+

如何在CocosCreator中使用JSZip压缩

压缩后文件 500KB+,压缩后小了10倍左右。

如何在CocosCreator中使用JSZip压缩

在cocos中使用jszip

首先,在github上下载jszip库 

https://github.com/Stuk/jszip

将下载的jszip.min.js放在项目assets/libs下,将jszip.d.ts放在项目根目录的libs下。 (jszip.d.ts在demo中)

如何在CocosCreator中使用JSZip压缩

将游戏的配置文件,多个json,压缩成zip包,并将后缀zip改为bin,放在resources/config下

如何在CocosCreator中使用JSZip压缩

代码中加载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);
               })
           });
      })
   }
}

加载解析成功,输出

如何在CocosCreator中使用JSZip压缩

来源:https://www.cnblogs.com/gamedaybyday/p/13567043.html

标签:Cocos,JSZip,压缩
0
投稿

猜你喜欢

  • 在Python中append以及extend返回None的例子

    2021-05-12 10:33:34
  • python发布模块的步骤分享

    2023-08-07 11:29:25
  • 详解如何在Linux(CentOS)下重置MySQL根(Root)密码

    2024-01-14 08:35:27
  • smarty简单分页的实现方法

    2023-11-21 08:59:48
  • asp数字或者字符排序函数代码

    2011-02-24 11:00:00
  • Go语言中JWT的创建和解析操作详解

    2024-05-09 10:09:22
  • 浅谈MySQL之select优化方案

    2024-01-27 03:32:38
  • python DataFrame获取行数、列数、索引及第几行第几列的值方法

    2023-08-19 18:12:13
  • 聊聊Python对CSV文件的读取与写入问题

    2023-09-26 09:42:29
  • Pytorch中的图像增广transforms类和预处理方法

    2022-09-10 22:21:06
  • 详解Swift中属性的声明与作用

    2023-04-16 07:26:17
  • 如何判断js脚本加载完成

    2008-11-04 13:53:00
  • 详解CentOS 6.5中安装mysql 5.7.16 linux glibc2.5 x86 64(推荐)

    2024-01-15 19:01:11
  • python去除拼音声调字母,替换为字母的方法

    2022-02-13 10:43:55
  • .NET Core读取配置文件的方法

    2024-06-05 09:31:38
  • python 实现图片裁剪小工具

    2022-04-27 18:15:15
  • mysql3升级到mysql5解决乱码心得

    2009-04-20 14:41:00
  • python并发编程多进程之守护进程原理解析

    2023-09-13 14:07:42
  • Python实现找到同名文件并复制到其他文件夹中

    2022-03-16 21:53:14
  • Oracle的默认用户密码

    2012-07-11 15:29:22
  • asp之家 网络编程 m.aspxhome.com