【转载】Quick-Cocos2d-x文件结构分析

在上一章我们讲过了Quick-Cocos2d-x中的环境搭建,这章我们分析下quick中的文件结构吧!打开quick的文件夹,可以看到如下的这些目录和文件:

bin:存放各种与引擎相关的脚本

  • compile_luabingding.shcompile_luabing.bat脚本是用来将cpp文件bind到lua上的脚本。
  • compile_scripts.shcompile_scripts.bat脚本是用来将lua脚本成二进制的,在我们发布版本时,对包进行编译转成二进制防止反编译。
  • create_project.shcreate_project.bat脚本用来创建quick的工程,在quick的player里面我们可以用GUI完成这项工作。
  • make_framework_package.shmake_framework_package.bat脚本是用来生成quick的framework的zip包时使用的。
  • pack_files.batpack_files.sh脚本用来将自己的lua文件打成zip包。
  • lib目录:上述脚本调用的php脚本。quick的底层脚本使用的是php语言,所以大家在使用命令的时候最好还是把php装上。quick在win32环境下自带了php.exe,在mac下需要安装php。
  • mac目录:tolua++工具
  • win32目录:php和luajit等win32上的工具

docs:存放quick的文档

  • api:以html格式存放的api文档
  • logo:quick的logo存放目录
  • apidoc_config.json:文档生成的json配置文件

framework:quick的核心部分,在Cocos2d-x基础上自己搭建的一套framework。

  • api:quick封装的库目录,现在基本里面的接口都改到cc目录下。

    • Context.lua: 存取索引数据,目前已经弃用。
    • EventProtocol.lua: 事件侦听协议,目前已经弃用。推荐使用cc.components.behavior.EventProtocol
    • GameNetwork.lua:第三方游戏平台SDK集成,如:OpenFeint,GameCenter等。现在已经弃用,推荐使用cc.sdk.social
    • GameState.lua:存取游戏数据。现在已经弃用,推荐使用cc.utils.State
    • Localize.lua:游戏本地化,主要是文字的本地华。现在已经弃用,推荐使用cc.utils.Localize
    • Store.lua:提供了游戏内的计费功能。现在已经弃用,推荐使用cc.sdk.pay
    • Timer.lua:这个是基于 2D-X 中 scheduler 计时器的一个扩展,他可以方便的管理各个计时器,并添加了一些方便的功能,例如:100秒的时间,每5秒调用触发一次计时器事件。推荐使用cc.utils.Timer
  • cc:cc扩展在Cocos2d-x C++ API和quick基本模块的基础上,提供了符合脚本风格的事件接口、组件架构等扩展。
    • init.lua:初始化cc扩展
    • GameObject.lua:quick现在使用的一套类似Unity3D的GameObject的框架
    • Registry.lua:quick中GameObject的注册器
    • EventProxy.lua:quick的事件管理器
    • ad:广告平台sdk的封装,目前只有pushbox的接口
    • analytics:游戏统计分析平台的封装,目前只有友盟的接口
    • Component:组件基类,所有组件都要派生自它
    • feedback:反馈SDK的封装,目前只有友盟反馈sdk的接口
    • mvc:quick中的mvc结构,要使用mvc结构的话只需要集成AppBase和ModelBase
    • net:网络接口封装,使用Socket连接
    • push:push SDK封装,目前包含友盟push和cocopush两个push的SDK
    • share:分享SDK封装,目前包含友盟分享SDK
    • ui:quick封装的Cocos2d-x控件,包含:UIGroup、UIImage,UIPushButton,UICheckBoxButton,UICheckBoxButtonGroup,UILabel,UISlider,UIBoxLayout
    • update:自动更新组件的封装,使用的是友盟的更新SDK
    • utils:quick中其他的封装的功能
  • cocos2dx:quick对Cocos2d-x中的扩展
  • platform:平台移植代码
  • audio.lua:音乐、音效管理
  • cocos2dx.lua:导入Cocos2d-x的库
  • crypto.lua:加解密、数据编码库
  • debug.lua:提供调试接口
  • deprecated.lua:定义所有已经废弃的 API
  • device.lua:提供设备相关属性的查询,以及设备功能的访问
  • display.lua:与显示图像、场景有关的功能
  • filter.lua:滤镜功能
  • functions.lua:提供一组常用函数,以及对 Lua 标准库的扩展
  • init.lua:quick framework的初始化
  • json.lua:json的编码与解码
  • luaj.lua:Lua与Java之间的交互接口
  • luaoc.lua:Lua与Objective-c之间的交互接口
  • network.lua:网络接口封装,检查wifi和3G网络情况等
  • schduler.lua:全局计时器、计划任务,该模块在框架初始化时不会自动载入
  • shortcode.lua:一些经常使用的短小的代码,比如设置旋转角度之类
  • transition.lua:为动作和对象添加效果
  • ui.lua:创建和管理用户界面
时间: 2024-10-15 10:38:03

【转载】Quick-Cocos2d-x文件结构分析的相关文章

quick cocos2d x 手机(Android端)启动过程学习

简要学习下quick cocos2d x 在安卓端启动的过程. 首先需要了解一点:quick cocos2d x是依托于Android的activity和GLSurfaceView(继承自SurfaceView)的环境来显示quick层的游戏界面. (1)首先quick类的android游戏从AndroidManifest.xml文件指定的activity(假设AC)启动. (2)AC继承父类的Cocos2dxActivity. (3)调用静态初始化块,加载cocos2dx的动态库.也就是一些C

PNG文件结构分析 ---Png解析

PNG文件结构分析 ---Png解析 为了实现更高级的应用,我们必须充分挖掘PNG的潜力. PNG的文件结构 根据PNG文件的定义来说,其文件头位置总是由位固定的字节来描述的: 十进制数 137 80 78 71 13 10 26 10 十六进制数 89 50 4E 47 0D 0A 1A 0A 其中第一个字节0x89超出了ASCII字符的范围,这是为了避免某些软件将PNG文件当做文本文件来处理.文件中剩余的部分由3个以上的PNG的数据块(Chunk)按照特定的顺序组成,因此,一个标准的PNG文

quick cocos2d-x Xcode下省去clean,让修改的脚本生效

<quick cocos2d-x Xcode下省去clean,让修改的脚本生效> 项目  target     build phases    点击build phase的空白区域 选择Editor     Add Build Phase      Add Run Script Build Phase 编写脚本: 顺序调整:(第二顺位) 这样就可以避免每次修改了lua脚本,都要手动clean,然后再run,太费时间.. quick cocos2d-x Xcode下省去clean,让修改的脚本生

quick cocos2d x场景切换的生命周期函数调用学习

先上一个场景的基本模版: 1 local ModelScene = class("ModelScene", function() 2 return display.newScene("ModelScene") 3 end) 4 5 function ModelScene:ctor() 6 self.sceneName = "ModelScene" 7 -- 注册点击事件监听 8 self.layer = display.newLayer() 9

RTF文件结构分析及其应用

RTF是一种非常流行的文件结构,很多文字编辑器都支持它,VB等开发工具 甚至还提供了Richtxtbox的控件.编写通用工具的程序员应该考虑在自己的软 件中加入读写RTF文件的功能,这样就需要对RTF的结构有充分的了解.而现在 最重要的信息发布手段莫过于WWW了,在编辑软件中提供RTF到HTML的转换也是程 序员应该考虑的事情.尽管WORD中已经有这个功能,但不能因此就对您的顾客 说:“先用我的程序存成RTF,然后再用WORD......”. 下面将对RTF文件结构分析及其应用进行讨论. 一.R

VS 解决方案文件结构分析

VS2013 解决方案文件结构分析 Visual Studio 的解决方案文件是一个文本文件,其中的内容不是太复杂,有些时候 Visual Studio 会把这个文件搞乱,理解一下这个文件的结构,对我们处理一些异常情况有所帮助. # 表示注释行 版本信息 Microsoft Visual Studio Solution File:用来说明解决方案文件的版本号,12.00 说明是 VS2013 的解决方案文件. VisualStudioVersion:打开这个解决方案文件需要的 Visual St

[转载]eclipse中设置文件的编码格式为utf-8

免责声明:     本文转自网络文章,转载此文章仅为个人收藏,分享知识,如有侵权,请联系博主进行删除.     原文作者:ryxxlong     原文地址:http://ryxxlong.iteye.com/blog/788469 1.可以在 eclipse 中配置 workspace 项下 text file encoding 属性的值来决定此工作区间下所有的 eclipse 项目的文档的编码属性. Window-->Preferences-->General-->Workspace

[转载]VC6中的文件后缀

VC文件扩展名 .APS:存放二进制资源的中间文件,VC把当前资源文件转换成二进制格式,并存放在APS文件中,以加快资源装载速度. .BMP:位图资源文件. .BSC:浏览信息文件,由浏览信息维护工具(BSCMAKE)从原始浏览信息文件(.SBR)中生成,BSC文件可以用来在源代码编辑窗口中进行快速定位. .C:用C语言编写的源代码文件. .CLW:ClassWizard生成的用来存放类信息的文件. .CNT:用来定义帮助文件中“Contents”的结构. .CPP或.CXX:用C++语言编写的

Android转载一:Android文件命名规范

REF:http://blog.csdn.net/gulianchao/article/details/23391651 (一) Layout命名1.contentview命名:activity_功能模块.xml例如:activity_main.xml.activity_more.xml2.Dialog命名:dialog_描述.xml 例如:dlg_hint.xml2.PopupWindow命名:ppw_描述.xml 例如:ppw _info.xml 列表项命名listitem_描述.xml 例