# Cocos Service Pack ![logo](/docs/static/img/logo2.png) 这是一个对 Cocos Creator 引擎进行特性增强、修复与优化的**开源非官方服务包**。 我们尽量以最符合引擎架构设计的方式加入新的特性、修复引擎已知问题以及性能优化。 > 项目的起源 > >2021 年 2 月,Cocos 发布 Cocos Creator 3.0,并在 3.x 发布之后不会再继续开发 2.x 版本的新特性,所有维护工作也会在 2023 年完全停止。 > >但是 2.x 在一些方面还并不完善,所以我们发布了这个非官方的引擎“魔改”合集。 > >相似的事情发生在 2014 年 4 月,官方停止了对 Windows XP 的维护,之后 Harkaz 发布了一个非官方服务包 Service Pack 4 (SP4)。 > >受到 Windows XP 的启发,我们将这个非官方的引擎“魔改”合集取名为 Service Pack。 > >我们暂时只专注于 Cocos Creator 2.x 版本的适配,Cocos Creator 3.x 正在蒸蒸日上,其引擎架构还在不断地迭代(不稳定),对其进行修改的维护工作会很大。 - [全部改动](#全部改动) - [使用方法](#使用方法) - [引擎扩展](#引擎扩展) - [Git Patch](#git-patch) - [直接动手](#直接动手) - [更新日志](#更新日志) - [贡献指南](#贡献指南) - [常见问题](#常见问题) - [为什么要直接修改引擎?](#为什么要直接修改引擎) ## 全部改动 服务包对引擎的所有改动都是开源的,并且每个改动都会附上一篇原理说明的文档,当你发现问题时请进行反馈,或者直接默默地帅气地提交一个 PR,帮助我们一起完善这个项目。 - 待补充。 ## 使用方法 我们推荐两种方式来使用这个服务包: ### 引擎扩展 待补充。 ### Git Patch 待补充。 ### 直接动手 阅读源码和原理文章来自行提取你想要的部分。 ## 更新日志 待补充。 ## 贡献指南 非常欢迎你能和我们一起来完善这个项目,所有的一切都通过 Github 进行: - 如果你有问题或者好的想法,请建立 `Issues` 或进入 `Discussions` 。 - 如果你有新的代码提交,请建立 `Pull requests`。 原则上我们接受任何增强与修改,但是**任何修改都必须兼容引擎原有的特性,不允许删除引擎原有的特性**,并且请认真思考功能的设计。 ## 常见问题 ### 为什么要直接修改引擎? 直接修改引擎可能是大部分人认为的下下策,我们能听到的声音有: - 可以通过 “修改对象的原型” 等一些编程技巧做成一个插件脚本 - 为什么要改?不改,因为 xxxx 原则说过,不要动旧的代码,我们造新的! - 我都没接触过自定义引擎呢,不知道该怎么用 - 如果我本来就改过引擎,不就很麻烦了吗? 以上问题我们都思考过, 首先,现在引擎的 2.x 版本已经停止了更新(仅做一些维护工作),也就是说我们的修改基本不会遇到在下个版本需要完全重构的情况。 其次,服务包中的大部分改动虽然可以做成一个插件脚本,但是原生平台就无法兼容,并且包体会增大,可维护性也不见得会提升。 最后,造新的或多或少会增加学习和使用的成本,并且我们希望它是 “原生” 的使用体验。 对于没有接触过自定义引擎的人,我们提供的引擎扩展可以一键帮助你设置好自定义引擎。 对于已经修改过引擎的人,我们提供 Git Patch 可以让你在已有修改的基础上轻松应用我们的更改,可能会产生一些冲突,但我相信你能解决。 **最后的最后,希望这个项目能够在你想学习相关知识或者做类似修改时可以帮助到你,享受吧!**