【转载】Quick-Cocos2d-x文件结构分析
在上一章我们讲过了Quick-Cocos2d-x中的环境搭建,这章我们分析下quick中的文件结构吧!打开quick的文件夹,可以看到如下的这些目录和文件:
bin:存放各种与引擎相关的脚本
compile_luabingding.sh和compile_luabing.bat脚本是用来将cpp文件bind到lua上的脚本。compile_scripts.sh和compile_scripts.bat脚本是用来将lua脚本成二进制的,在我们发布版本时,对包进行编译转成二进制防止反编译。create_project.sh和create_project.bat脚本用来创建quick的工程,在quick的player里面我们可以用GUI完成这项工作。make_framework_package.sh和make_framework_package.bat脚本是用来生成quick的framework的zip包时使用的。pack_files.bat和pack_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和ModelBasenet:网络接口封装,使用Socket连接push:push SDK封装,目前包含友盟push和cocopush两个push的SDKshare:分享SDK封装,目前包含友盟分享SDKui:quick封装的Cocos2d-x控件,包含:UIGroup、UIImage,UIPushButton,UICheckBoxButton,UICheckBoxButtonGroup,UILabel,UISlider,UIBoxLayoutupdate:自动更新组件的封装,使用的是友盟的更新SDKutils:quick中其他的封装的功能
cocos2dx:quick对Cocos2d-x中的扩展platform:平台移植代码audio.lua:音乐、音效管理cocos2dx.lua:导入Cocos2d-x的库crypto.lua:加解密、数据编码库debug.lua:提供调试接口deprecated.lua:定义所有已经废弃的 APIdevice.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:创建和管理用户界面
【转载】Quick-Cocos2d-x文件结构分析的更多相关文章
- PNG文件结构分析 ---Png解析
PNG文件结构分析 ---Png解析 为了实现更高级的应用,我们必须充分挖掘PNG的潜力. PNG的文件结构 根据PNG文件的定义来说,其文件头位置总是由位固定的字节来描述的: 十进制数 13 ...
- 【转载】 C#往文件中追加文本内容信息
在C#的文件相关操作中,往已有的文件中追加相关内容信息也是常有的操作,例如我们在写网站日志文件的时候,很多时候是1天的日志存放在一个txt文件中,此时就涉及到往原有文件中追加写入文本内容信息,追加文本 ...
- VS 解决方案文件结构分析
VS2013 解决方案文件结构分析 Visual Studio 的解决方案文件是一个文本文件,其中的内容不是太复杂,有些时候 Visual Studio 会把这个文件搞乱,理解一下这个文件的结构,对我 ...
- PNG文件结构分析
http://blog.163.com/iwait2012@126/blog/static/16947232820124411174877/ PNG文件结构分析 对于一个PNG文件来说,其文件头总是由 ...
- 【转载】C#指定文件夹下面的所有内容复制到目标文件夹下面
在涉及到文件夹操作的过程中,有时候需要将文件夹下的所有内容复制拷贝到另一个文件夹,在C#的开发中有时候会遇到这个功能需求将指定文件夹下所有的内容复制到另一个文件夹,这个过程需要遍历所有的文件和目录.此 ...
- Heritrix源码分析(六) Heritrix的文件结构分析(转)
本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/642618 本博客已迁移到本人独立博客: http://www.yun5u. ...
- Cocos2D 指定文件夹创建项目
参考http://www.cnblogs.com/skynet/p/3428369.html 通过下面的一些改造,可以让新建的cocos2d-x项目独立于cocos2d-x引擎目录: 1) 将 ...
- [转载]eclipse中设置文件的编码格式为utf-8
免责声明: 本文转自网络文章,转载此文章仅为个人收藏,分享知识,如有侵权,请联系博主进行删除. 原文作者:ryxxlong 原文地址:http://ryxxlong.iteye ...
- 转载:[Java]读取文件方法大全
转载网址:http://www.cnblogs.com/lovebread/archive/2009/11/23/1609122.html 1.按字节读取文件内容 2.按字符读取文件内容 3.按行读取 ...
随机推荐
- python中装饰器的原理以及实现,
python版本 3.6 1.python的装饰器说白了就是闭包函数的一种应用场景,在运用的时候我们遵循 #开放封闭原则:对修改封闭,对拓展开放 2.什么是装饰器 #装饰他人的器具,本身可以是任意可调 ...
- MVC4+EF5 edmx代码分析
本文分析Entity Framework(EF)从数据库自动生成的模型文件代码(扩展名为edmx). 一. 概述 本文使用的数据库结构尽量简单,只有2个表,一个用户表和一个分公司表(相当于部门表),一 ...
- 解决ueditor编辑器图片在线管理图片无法显示
使用ueditor,点击在线管理,服务器图片路径显示不正确,如下图所示 查看源码,如下: 发现图片src中中间多了一长串的项目跟路径,解决的办法是 把 jsp/controller.jsp 里面 ...
- 检测固定IP的端口是否开放批出
因为运维工作经常需要telnet某个IP的端口是否正常,因此有了下文 .BAT内容如下: @echo off for /f %%i in ('type ip.txt') do ( echo %%i t ...
- Python爬虫requests判断请求超时并重新发送请求
下面是简单的一个重复请求过程,更高级更简单的请移步本博客: https://www.cnblogs.com/fanjp666888/p/9796943.html 在爬虫的执行当中,总会遇到请求连接 ...
- vc6.0批量加注释
MATLAB批量加注释的方法非常简单明了,加注释是ctrl+R,去注释是ctrl+T 然后在VC中我对一条一条加注释的方法非常烦恼,我想也许会有简单的方法可以批量家注释.果然,先贴代码 '------ ...
- do_try_to_free_pages
/* * This is the main entry point to direct page reclaim. * * If a full scan of the inactive list fa ...
- Java判断数据库表是否存在的方法
一.需求 最近在写一个程序,需要取数据库表的数据之前,需要先查看数据库是否存在该表否则就跳过该表. 二.解决方案(目前想到两种,以后遇到还会继续添加): .建立JDBC数据源,通过Java.sql.D ...
- ADO.NET中DataSet、DataTable、DataRow的数据复制方法
DataSet 对象是支持 ADO.NET的断开式.分布式数据方案的核心对象 ,用途非常广泛.我们很多时候需要使用其中的数据,比如取得一个DataTable的数据或者复制另一个DataTabe中的数据 ...
- js 关键字 in 判断 一个属性或方法是否属于一个对象
判断对象是否为数组/对象的元素/属性: 格式:(变量 in 对象)......注意,,, 当“对象”为数组时,“变量”指的是数组的“索引”: 当“对象”为对象是,“变量”指的是对象的“属性”. 判断 ...