Cocos2D-x开发之道
文章平均质量分 65
vanquishedzxl
这个作者很懒,什么都没留下…
展开
-
Cocos2D-x游戏开发之十二:在游戏背景上添加障碍物
今天我们在我们的游戏场景中再添加一个很重要的角色,游戏障碍物。这一节的游戏障碍我们任然在上一节所说的实体类上继承:我们的障碍物类如下所示实现:class Monster : public Entry{public: Monster(void); ~Monster(void); CREATE_FUNC(Monster); virtual bool init();pub原创 2014-03-27 21:39:50 · 3058 阅读 · 0 评论 -
Cocos2D-x游戏开发之二:菜单事件响应
接着描述Cocos2D-x基础知识。这一节我描述一下Cocos2D-x菜单的定义和响应。先上代码吧,我们直接在helloworld的init函数中做更改调试:bool HelloWorld::init(){ bool bRet = false; do { /////////////////////////////////////////原创 2014-03-15 22:40:55 · 1830 阅读 · 0 评论 -
Cocos2D-x游戏开发之三:音乐播放
接着描述Cocos2D-x基础知识。这一节我描述一下Cocos2D-x音乐播放功能。同样是在HelloWorld中稍加改造,二话不少代码:bool HelloWorld::init(){ bool bRet = false; do { /////////////////////////////////////////////////原创 2014-03-15 23:34:56 · 1247 阅读 · 0 评论 -
Cocos2D-x游戏开发之四:CCScale9Sprite and CCControlButton
接着描述Cocos2D-x基础知识。这一节我描述一下Cocos2D-x的CCScale9Sprite and CCControlButton 用法。先上代码吧,我们直接在helloworld的init函数中做更改调试:bool HelloWorld::init(){ bool bRet = false; do { /原创 2014-03-16 00:08:53 · 1680 阅读 · 0 评论 -
Cocos2D-x游戏开发之六:CCMoveTo CCMoveBy and CCscaleTo CCBlink
歇了两三天,,嘿嘿是不是感觉我没有恒心啊。。。么事今天咱们继续。今天我们学习一下CCMoveTo CCMoveBy CCscaleTo CCBlink 这四个类,比较简单看看代码就清楚了。bool HelloWorld::init(){ bool bRet = false; do { CC_BREAK_IF(! CCLayer:原创 2014-03-21 21:01:20 · 1647 阅读 · 0 评论 -
Cocos2D-x游戏开发之八:事件连续执行:CCMoveBy CCCallFunc CCSequence
接下来让我们继续基础知识的最后一节,将各种事件按照先后顺序连接起来是一件非常重要的事情,这一节我们做一个简单的Demo。我先执行移动Action然后在移动完成之后再告诉你们我已经到家了。。任然比较简单,代码如下:bool HelloWorld::init(){ bool bRet = false; do { CC_BREAK_IF(原创 2014-03-21 22:20:34 · 1952 阅读 · 0 评论 -
Cocos2D-x游戏开发之九:屏幕触摸一:基本屏幕操作响应
今天我接着学习屏幕操作的响应事件。Cocos2D-x的屏幕触摸主要有四个函数如下所示: virtual void ccTouchesBegan(CCSet *pset,CCEvent *event);virtual void ccTouchesMoved(CCSet *pset,CCEvent *event);virtual void ccTouchesEnded(CCSet *p原创 2014-03-21 22:51:50 · 1798 阅读 · 0 评论 -
Cocos2D-x游戏开发之十:背景无限滚动
今天研究了一下Coco2D-x的背景无限滚动,其实是学习别人的demo,不过自己最终还是折腾出来了,其实还是比较简单了,就是背景不停地移动然后两张图片交替的贴上去。其精髓之处就是不断地更新背景然后在每一帧里调整两张背景的\X锚点,然后就会给人一种主角再向前奔跑的感觉。核心代码如下:bool TollgateScene::init(){bool bRet = false;do原创 2014-03-25 21:41:10 · 8261 阅读 · 1 评论 -
Cocos2D-x游戏开发之七:CCMoveBy CCJumpBy CCRotateBy CCAction CCRepeatForever
现在我们接着学习Cocos2D-x 的基础用法。CCMoveBy CCJumpBy CCRotateBy CCAction CCRepeatForever直接代码如下:bool HelloWorld::init(){ bool bRet = false; do { CC_BREAK_IF(! CCLayer::init原创 2014-03-21 21:34:18 · 1399 阅读 · 0 评论 -
Cocos2D-x游戏开发之十一:在游戏背景上添加精灵
有了游戏背景的无限滚动之后我们应该在背景上添加些什么东西了,毕竟这个将来是一个游戏需要让用户动起来,而不是让大家傻傻的看着一个无限循环背景,这样会遭到同行的批斗的。 今天我们接着上一张在背景上添加些精灵。 首先我们先添加上一个小妹妹妹吧,我们绘制一个玩家类,首先在整个游戏中我们的游戏主角和障碍物都继承自一个实体类,所以我们先看一下这个实体类吧:有了实体类接下来我们就可以原创 2014-03-27 20:32:17 · 1668 阅读 · 0 评论 -
Cocos2D-x游戏开发之二十一:ScheduleUpdate 和ScheduleOne的用法
今天接着学习了Coco2D-x的定时器,Cocos2D为我们封装好了定时器功能,我们只需要再用到的地方直接使用: schedule可以直接使用,即采用默认方式在init()函数里面调用:this->scheduleupdate();并重新定义Update()即可。 也可以调动this-.>schedule(schedule_selector(HelloWorld::MYUpd原创 2014-04-09 21:30:01 · 8179 阅读 · 0 评论 -
Cocos2D-x游戏开发之一:场景切换
今天开始学习Cocos2D-x游戏开发。 Cocos2D-x游戏开发框架目前还不是很熟悉,作为ITf伐木工我决定一点点将其搞定。 开始之前先普及一下知识: scene(即 CCScene类)是app 工作流上独立块。scene也叫做 screents 或者“stages”. 一个app可能拥有多个scenes, 但在任何时候只能有一个是激活状态的。原创 2014-03-15 19:57:18 · 7356 阅读 · 0 评论 -
Cocos2D-x游戏开发之二十:添加可以吃的精灵
现在我们在地图上的“Meta”上添加“star”瓦块,然后在代码中添加如下如下:bool Player::SetPlayerPosition(int x,int y){ CCSize spritesize = m_sprite->getContentSize(); CCPoint dspoint = CCPoint(x+spritesize.width/2,y); CCPoint t原创 2014-04-06 22:35:52 · 1426 阅读 · 0 评论 -
Cocos2D-x游戏开发之十九:瓦块地图之碰撞检测
昨天我们有了精灵和背景,并且精灵可以跑动了,但是我们不能让精灵无穷无尽地跑下去吧,于是今天我们要在地图上添加一些障碍物了;首先打开精灵的TMX地图,然后我们自定义一个32X32像素的图片添加到图层中,然后设置此图层的属性为:“collidable” 值为“true”,下一步在地图中新建一个图层起名为“meta”现在发挥你的创造性把这些小东西添加此图层中保存即可。接下来就该在code中做一些原创 2014-04-04 23:30:43 · 3811 阅读 · 0 评论 -
Cocos2D-x游戏开发之五:CCControlPotentiometer and CCControlSlider
今天继续Cocos2D-x的基础CCControlPotentiometer and CCControlSlider,到目前为至我想大家已经很了解学习的基本方法了,所以直接上代码吧:bool HelloWorld::init(){ bool bRet = false; do { CC_BREAK_IF(! CCLayer::init());原创 2014-03-17 23:24:28 · 1275 阅读 · 0 评论 -
Cocos2D-x游戏开发之十三:自定义游戏闪烁提示类
现在我们运用我们已经学过的知识实现一个类来完成游戏中主角或者障碍物受到攻击时闪烁提示信息。没有就新的东西,所以菜鸟们都可以看懂的,另外我还要特意强调一下,小的方面游戏需要创新,游戏开发中的效果需要创新,创新不是多么的难,运用简单的知识就能创新就像我们的这个类。废话说多了,直接看代码吧:class FlowWord : public CCNode {public: static原创 2014-03-27 22:09:37 · 3353 阅读 · 1 评论 -
Cocos2D-x游戏开发之二十三:CCNotificationCenter观察者模式(2)-不同层之间事件的发送和接受
刚才我们 学习了基本的CCNotificationCenter观察者模式在一个层之中监听事件,现在我们再进一步学习如何在不同层之间监听吧,这一节的知识点我们在HelloWorld中发送一个事件消息在OtherLayer中接受并且处理消息。其实很简单只是一个函数换了个位置而已,直接上代码吧:class HelloWorld : public cocos2d::CCLayer{public:原创 2014-04-13 20:59:07 · 3097 阅读 · 0 评论 -
Cocos2D-x游戏开发之二十四:自定义字符串分割类
今天我们为下一节的CSV文件处理做一个准备,开始自定义一个对字符串按照特定的符号分割的类,实现如下:class StringUtil : public CCObject {public: static StringUtil* sharedStrUtil(); bool init(); /** 用分隔符分割字符串,结果存放到一个列表中,列表中的对象为CCString原创 2014-04-13 21:25:54 · 4902 阅读 · 0 评论 -
Cocos2D-x游戏开发之二十五:自定义文本读取工具类
现在我们在上一节的基础上开始对文件进行解析,原创 2014-04-13 21:45:04 · 1631 阅读 · 0 评论 -
Cocos2D-x游戏开发之十五:CCTMXTiledMap地图的基础实例
今天学习了Cocos2D-x的地图基础知识,了解了游戏中地图是个怎么回事,从这一节开始我重新写一个例子。开门见山,地图编辑器我们利用开源软件:tiled-0.9.1-win32-setup.exe,可以在网上直接下载,编辑地图的方法很简单,大家在网上随便可以找到,在这里我只是记录一下我的code里面比较关键的一些地方:所以我们见直接上代码吧(我们用地图编辑器生成的地图文件叫做level01原创 2014-03-31 23:10:53 · 1647 阅读 · 0 评论 -
Cocos2D-x游戏开发之十四:粒子系统
今天补一补昨天晚上落下的Cocos2D-x非常重要的一节-------->粒子系统;作为一个初学者我只是利用了例子里面的几个基本类,组合出了如下图所示的一副场景:代码如下:CCParticleSystem* m_emitter = CCParticleExplosion::create(); m_emitter->retain(); this->addC原创 2014-03-31 23:01:53 · 1086 阅读 · 0 评论 -
Cocos2D-x游戏开发之十六:创建会运动的精灵
今天我们试着让我们的精灵动起来,当然我们知道所谓的动就是让精灵在多副图之间切换,所以我们开始之前先准备15张精灵运动图片,然后用工具将这些图片打包。所以当我们准备好这一切之后就可以开始编码了。void Player::run(){CCSpriteFrameCache * freamCache = CCSpriteFrameCache::sharedSpriteFrameCache();f原创 2014-04-01 22:10:56 · 2220 阅读 · 0 评论 -
Cocos2D-x游戏开发之十七:角色类的总结
学了这么久了现在还是有点模糊,今天我们把我只之前学习的知识开始做一个简单到 总结:首先我们先认识一下我们的游戏主角:在开发中我们往往不是把主角设置为一个精灵,因为精灵还有其他属性,所以我们的主角由一个成员变量叫做CCsprite:同事通常因为给个主角都是有共同点的,所以我们就先抽象出来一个角色实体:class Entity : public CCNode,public ControlL原创 2014-04-01 22:25:21 · 2799 阅读 · 0 评论 -
Cocos2D-x游戏开发之十八:背景随着角色而滚动
今天我们学习一下让我们的背景随着任务的移动不断地滚动。#include "entity.h"class Player : public Entity{public: Player(void); ~Player(void);public: CREATE_FUNC(Player); virtual bool init(); void run(); virtual bool Se原创 2014-04-02 21:24:34 · 1659 阅读 · 0 评论 -
Cocos2D-x游戏开发之二十二:CCNotificationCenter观察者模式基础(1)
Cocos2D-X为我们准备了太多东西,当我们想要监听一个动作但是都不能老是盯在这一件事情上的时候就可以用他为我们量身定制的观察者模式,今天我们初步来学习一下这个传说很久的观察这模式在Cocos2D-X中的简单运用。其实观察者模式的初步学习还是很简单的我们只要定义两个函数即可:class HelloWorld : public cocos2d::CCLayer{public:原创 2014-04-13 20:33:25 · 5232 阅读 · 0 评论