介绍
MKFramework 介绍
MKFramework 是一个专为 Cocos Creator 3.x 设计的综合游戏开发框架。它提供了一系列集成系统,用于处理常见的游戏开发任务,例如资源管理、UI 管理、音频播放、本地化和网络。本文档概述了该框架、其架构及其核心系统。
有关安装说明,请参阅 安装指南。
目的和范围#
MKFramework 不追求大而全,旨在通过提供 高质量 的游戏必备功能帮助开发者节省工作量
如果你想要额外模块,例如
ECS,行为树等可以查看 推荐扩展
开源#
MKFramework 致力于帮助到更多人快速开发游戏,所以框架 永久开源 🎉,MK 框架不会对框架模块、分版本进行收费,也不会对其教程收费。后续可能会出一些付费的框架增强插件用于支持框架维护。也欢迎进行 捐赠 支持开源项目维护工作。
贡献:
有兴趣帮助此项目改进吗?快来查看 GitHub 代码库,从功能建议到错误修复,欢迎所有人的贡献
项目特点#
-
完善的生命周期系统:首个实现基于 子->父 open, 父->子 close 的生命周期系统的框架
-
强大的新手引导:支持多实例,强制\非强制引导,步骤跳转还原,子步骤分脚本且可挂载到节点的引导系统
-
自动化资源管理:只需要在加载资源时填写一个参数,你就不需要手动去释放资源
-
创新的网络系统:免去手动填写消息号,只需传入一个对象即可发送消息
-
音频系统:优化了最大播放限制处理,可以音频为粒度控制,支持多分组,全局管理。通用/微信双系统
-
数据监听器:可监听数据的每个属性变更,可用于实现 MVVM,开发调试
-
更强的扩展性:所有框架配置集中在一个文件,你可以轻松配置你自己的框架
-
全类型安全:所有框架接口基于类型安全设计,存储、事件、初始化参数...等等的参数错误再也不用担心 VSCode 不爆红提示
-
便于修改:可像用户脚本一样直接修改框架 TS 源码,编辑器刷新后就生效
-
模块剔除:框架模块支持手动剔除和恢复(TreeShaking),一键缩减代码体积
框架概览#
MKFramework 将其功能组织在一个中央 mk 命名空间下,并包含各种专用功能模块。这些模块旨在协同工作,但也可以根据项目需要独立使用。
![]()
模块列表#
-
音频模块: 提供了微信/通用音频系统,支持音频多分组管理
-
新手引导模块: 多引导管理,多边形遮罩,支持任意步骤跳转 ,可任意插入/删除/添加步骤,一步骤一脚本
-
多语言模块: 提供多语言文本\图片\节点。可动态增加文本/图片数据,支持编辑器预览!
-
模块系统: 提供单脚本、MVC 架构。成熟的 UI 管理器,完善的生命周期和展示层级控制
-
网络模块: 支持 Http、Websocket。可自定义编解码,收/发消息简化,可扩展收发数据结构
-
资源模块: 提供本地/远程/编辑器的资源加载与释放、创新的 Bundle 热更、Bundle 管理器机制
-
数据模块: 数据共享器(异步/同步支持),本地数据存储器(类型安全),数据监听器(可扩展 MVVM 或本地调试)
-
任务模块: 可重复利用的 Promise,以及顺序执行的任务管线
-
事件模块: 参数类型安全!可创建多实例事件对象,增加事件请求方法等待事件回调返回
-
日志模块: 支持多实例,打印等级控制,增加错误日志上传功能
-
适配模块: 提供屏幕自动适配和节点适配
-
其他模块: 提供节点粒度的暂停/恢复