Cocos2d-X3.0 刨根问底(一)----- 概览
罗嗦几句,本系列文章记录了小鱼(本人)自学Cocos2D-X的整个过程,主要从分析Cocos2D-x的源码方式来学习Cocos2d-x这样一个优秀的游戏引擎架构,本着不但要知其然还要知其所以然的学习态度来揭开Cocos2d-x的奥秘。阅读本文要求读者有一定的C++程序经验。
一、Cocos2d-x是啥玩意
小鱼是听同事介绍,当前开发手机2d游戏多采用cocos2d-x引擎,开源且可以实现跨手机平台的快速移植,听到有这种神器,向百度求助好多介绍cocos2d-x的文章,在这里我不去引用了大家可以去百度,只是知道一点cocos2d-x是可以在多种操作系统下来开发2d游戏的一个引擎就可以了。
二、Cocos2d-x开发环境的搭建
继续百度找到了一大堆关于cocos2d-x在windows环境下的搭建的文章,这里也不要赘述了。
到官网 http://www.cocos2d-x.org/ 下载了最新版本的cocos2d-x3.0(要学就学新的cocos2d-x2.0,1.0都跳过了)
解压在build文件夹里面找到了cocos2d-x在vs2012编译器下面的解决方案cocos2d-win32.vs2012.sln
小鱼还在使用古老的vs2003没办法下载一个安装了一下vs2012(界面好丑,一点也不习惯 忍了)
打开解决方案,编译,等了近10分钟全部编译通过。
三、从示例程序开始
在解决方案中可以看到如下的几个工程

从命名上可以看队形很整齐,简单的浏览一下
Cpp-empty-test 应该是一个空的项目示例
Cpp-tests 应该是测试单元之类的东东,运行一下,原来是各种示例程序以后进行cocos2d-x程序开发应该会经常到这些示例程序里面来找代码片段了。
libAudio 应该是封装音频播放功能的库
libBox2D 毫无疑问 box2d物理引擎的封装
libchipmunk 也是一个物理引擎的封装
libcocos2d 从名称上看应该是我们要着重了解的Cocos2d-x库
libCocosBuilder 应该是与cocosBuilder有关系的东西,具体是什么碰到了再去深入了解
libCocosStudio 在官网下载cocos2d-x时看到了cocosstudio这个库应该是与cocos studio有关系的
libExtensions 应该是一些扩展,展开文件去看一下,有关于Gui 和一些debug的工具
libGUI UI库,展开UIWidgets可以看到这个ui库有 Button,CheckBox, ImageView,LoadingBar等一些控件,还有富文本控件 RichText,太好了,游戏开发都会用到。
libLocalStorage 打开文件扫几点,是对 sqlite 操作的封装。应该是支持数据持久化的库。
liblua 对Lua的支持库
libNetwork 对网络的支持,展开扫一眼头文件,有对http,socket,websocket的支持,很给力。
libSpine 看了一下文件大概内容,应该是一些对cocos2d-x工具支持库碰到再说。
lua-empty-test lua项目的空工程
lua-tests lua应用的示例程序
一共16个工程,核心是libcocos2d工程,从 cpp-empty-test的示例工程入手应该容易一些。
运行一下cpp-empty-test

看到了熟悉的 Hello World 下面我就从这里入手啦。
Cocos2d-X3.0 刨根问底(一)----- 概览的更多相关文章
- 如何在Cocos2D 1.0 中掩饰一个精灵(六)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 掩饰一个精灵:实现代码 打开HelloWorldLayer.m并 ...
- 如何在Cocos2D 1.0 中掩饰一个精灵(一)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 原帖来自Ray Wunderlich写的精彩的文章 How To ...
- Cocos2D v2.0至v3.x简洁转换指南(三)
Cocos2D 3.3中的注意事项 如果你在使用Cocos2D 3.3+(是SpriteBuilder 1.3+的一部分)你将不得不替分别的换所有存在的UITouch和UITouchEvent为CCT ...
- Cocos2D v2.0至v3.x简洁转换指南(二)
触摸处理 我们在稍后将完成Cocos2d 3.0中触摸处理的完整教程.而现在最重要的是知道如何去启用触摸处理在你的CCNode中: self.userInteractionEnabled = TRUE ...
- 如何将各种低版本的discuz版本升级到discuz x3.0
最近在做discuz改版的项目,遇到了很多问题,相信很多拥有discuz论坛的版主,站长和程序猿在升级或改版discuz的过程中遇到过和我一样的问题,所以我开了一个discuz专栏,为大家讲解一下di ...
- cocos2d 2.0和UIKit混合编程, Push CCDirector的时候出现黑屏的天坑
症状 使用cocos2d 2.0和UIKit混合编程, 有一块用cocos2d编写的小程序, 将CCDirector push到一个UINavigationController里面. 虽然事先在后台初 ...
- cocos2d-x3.0创建第一个jsb游戏
第一步: 最新的cocos2d-x.下载地址https://github.com/cocos2d/cocos2d-x github上最新的引擎,值得注意的是官网上发布的引擎是稳定版.选择哪种就看个人喜 ...
- Cocos2d-X3.0 刨根问底(四)----- 内存管理源码分析
本系列文章发表以来得到了很多朋友的关注,小鱼在这里谢谢大家对我的支持,我会继续努力的,最近更新慢了一点,因为我老婆流产了抽了很多时间来照顾她希望大家谅解,并在此预祝我老婆早日康复. 上一篇,我们完整的 ...
- Cocos2d-X3.0 刨根问底(二)----- 从HelloWorld开始
小鱼习惯直接从代码实例来学习一套成型的引擎库. 运行cpp-empty-test 一个典型的HelloWorld程序翻看代码结构 看到了 main.h与main.cpp文件就从这里开始 #ifndef ...
随机推荐
- HDU 4122 Alice's mooncake shop --RMQ
题意: 一个月饼店做月饼,总营业时间m小时,只能在整点做月饼,可以做无限个,不过在不同的时间做月饼的话每个月饼的花费是不一样的,假设即为cost[i],再给n个订单,即为在某个时间要多少个月饼,时间从 ...
- leetcode database题目
LeetCode有10道SQL的题目,最近学习SQL语言,顺便刷题强化一下, 说实话刷完SQL学习指南这本书,不是很难,上面的例子 跟语法规则我都能理解透, 实际中来做一些比较难的业务逻辑题,却一下子 ...
- mysql数据库的备份和导入
mysqldump -u root -p --default-character-set = gbk -d demo_db>c:/appserv/www/demosql/sql1.sql//将数 ...
- 关于URL编码/javascript/js url 编码
一.问题的由来 URL就是网址,只要上网,就一定会用到. 一般来说,URL只能使用英文字母.阿拉伯数字和某些标点符号,不能使用其他文字和符号.比如,世界上有英文字母的网址 “http://www.ab ...
- 谁可以说出HashMap和HashSet的相同点和不同点。
谁可以说出HashMap和HashSet的相同点和不同点. 2011-11-15 20:46ruoshui_t | 浏览 20310 次 Perl 2011-11-15 21:17 #知道行家专业创 ...
- ping提示小结
1,Win7 ping 不存在的地址(请求超时) 因为路由器不理睬他. 2,R1-R2-R3 R1有默认路由,R1 ping不存在的地址(目标不可达) 3,R1-R2 R1ping本网段中不存在的地址 ...
- Linux Linux程序练习五
题目:编写两个进程a和b,利用共享内存技术,a向共享内存写字符串,b将从共享内存中读到的字符串在屏幕上打印出来. //创建共享内存区 #include <stdio.h> #include ...
- U3D physics总结
物理系统基于collider, 没有collider的物体不会发生任何主动和被动的物理交互,也不会产生trigger相关消息. 当且仅当A和B都有碰撞体时,两者才有可能发生交互,才有可能产生trigg ...
- 后盾网VIP美团网开发(基于HDPHP)(全套38课)
教程简介 本教程由后盾网讲解,共40节,主要介绍了美团网的开发,从需求分析出发,对商铺的建立.购物流程的构建及订单处理等都做了详细的介绍,非常适合做电子商务开发的朋友和同学参考学习使用,完整教程可以在 ...
- MySQL系列——在windows上通过压缩包的方式安装mysql
以下信息来源于: http://dev.mysql.com/doc/refman/5.6/en/windows-create-option-file.html 整个过程主要分为以下几个步骤: 一. ...