这是所有 Kobold2D 内部项目的基准文件夹。
=== 文件夹描述 ===
/buildsettings 包含了大部分帮助管理 Xcode 构建设置的 Kobold2D .xcconfig 文件。为了避免在每个项目中手动更改构建设置 GUI,可以通过其中一个 .xcconfig 文件进行全局更改。注意,每个项目都包含包含仅在项目级别可以定义的设置的额外的 .xcconfig 文件。在可能的情况下,您应该修改项目级别的 .xcconfig 文件,而不是保留 Kobold2D 文件,除非您知道自己在做什么。
/docs 包含用于生成 HTML 和 Xcode .docset 文档的 doxygen .config 文件。几个 bash 脚本有助于创建文档文件和安装 Xcode docsets。请注意,如果您运行这些脚本,它们可能会创建数百兆字节的文件,这不是您希望提交回 GitHub 的!
/kobold2d 包含所有用于新功能和粘合代码的 Kobold2D 源代码。子文件夹 cocos2d-ext 包含扩展类(主要是类别),它们向 cocos2d-iphone 类添加新方法。不要将其与 cocos2d-iphone-extensions 项目混淆。任何新的代码都应该添加到 kobold2d 文件夹中,并添加到 Kobold2D 目标中。如果贡献是实质性的,或者仅对某些开发者有用或者对所有开发者提出要求,则可以考虑创建额外的静态库。任何扩展或改进 cocos2d-iphone 类的代码都应该添加到 cocos2d-ext 文件夹中,除非更改需要您直接修改 cocos2d-iphone 代码。在几乎所有情况下,不需要修改 cocos2d-iphone,大多数更改都可以作为扩展来实现。无论如何:请在添加新代码之前寻求咨询,以确保我们可以找到添加代码和修改现有代码的正确方式和位置。
General rule: Kobold2D's primary goal is to extend cocos2d-iphone, not to modify it. Exceptions notwithstanding, but those exceptions should be limited in order to allow new cocos2d-iphone versions to be integrated easily and quickly.
/libs 包含所有第三方库和代码。由于兼容性原因需要进行的一些更改,主要限于修复 ARC、最新编译器版本或 Mac OS 构建的错误。如果您要添加新的静态库,应该在添加库代码的地方添加。
/templates 包含(或将要包含)文件、项目和工作室模板。在使用 GitHub 版本时,/project 文件夹将不存在或为空。安装程序包将 XXXX-Template 项目放在这里,Kobold2D 项目启动器工具允许用户选择其中一个项目作为项目模板。/workspace 文件夹包含一些 Kobold2D 项目启动器工具使用的基本文件,以构造新的 .xcodeworkspace 文件。
/tools 包含由 Kobold2D 提供的各种图形用户界面 (GUI) 和命令行工具的项目。其中大部分并非良好的代码示例,而是“能完成任务”的代码。这些任务是一系列相对有限的需求,这些需求很容易满足。这也是一个很好的借口,来掩盖“项目起始工具”是我第一个制作的 Cocoa (touch) 应用的事实。嗯,我确实学到了很多……而且它真的可以工作……这让我感到非常惊讶。 :)