博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Quick-Cocos2d-x文件结构分析
阅读量:5884 次
发布时间:2019-06-19

本文共 2391 字,大约阅读时间需要 7 分钟。

hot3.png

打开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:创建和管理用户界面

转载于:https://my.oschina.net/u/223340/blog/318485

你可能感兴趣的文章
IIS 7 WAS服务不可用
查看>>
第二周 登录小界面
查看>>
php函数 array_values()
查看>>
兼容firefox的iframe高度自适应代码
查看>>
Spring Data Solr教程(翻译)
查看>>
java map典型排序
查看>>
Android--Json解析
查看>>
实验三 组合逻辑电路的VHDL设计
查看>>
解决vs2010“创建或打开C++浏览数据库文件 发生错误”的问题 Microsoft SQL Server Compact 3.5...
查看>>
linux head命令
查看>>
特效effects
查看>>
WM8960音频播放
查看>>
Visual Studio Package扩展——vsct文件简介
查看>>
C#格式化数值结果表(格式化字符串)
查看>>
转载:Hadoop权威指南学习笔记
查看>>
复制构造函数应该注意的问题
查看>>
四元数基础
查看>>
转换表
查看>>
记录一次Mac虚拟机安装的过程(有图有真相)
查看>>
SubSonic3.0插件分页查询速度测试
查看>>