cocos2dx实例开发之flappybird(入门版),cocos2dxflappybird 创建项目 游戏设计 开发步骤 效果图:

  次阅读 作者:智能小宝 来源:互联网 2015-09-28 15:37 我要评论(0)

cocos2dx实例开发之flappybird(入门版),cocos2dxflappybird

cocos2dx社区里有个系列博客完整地复制原版flappybird的所有特性,不过那个代码写得比较复杂,新手学习起来有点捉摸不透,这里我写了个简单的版本。演示如下:

创建项目

VS2013+cocos2dx 3.2创建win32项目,由于只是学习,所以没有编译为安卓、ios或者WP平台的可执行文件。

最终的项目工程结构如下:

很简单,只有三个类,预加载类,游戏主场景类,应用代理类,新手刚入门喜欢将很多东西都写在尽量少的类里面。

游戏设计

游戏结构如下,游戏包含预加载场景和主场景,主场景中包含背景、小鸟、管道和各种UI界面。

开发步骤

1,素材收集

从apk文件里提取出来一些图片和音频,并用TexturePatcher拼成大图,导出plist文件。

2,预加载场景

新建一个LoadingScene,在里面添加一张启动图片,通过异步加载纹理并回调的方式把所有图片素材、小鸟帧动画以及音频文件都加入到缓存,加载完毕后跳转到游戏主场景。

//添加加载回调函数,用异步加载纹理

Director::getInstance()->getTextureCache()->addImageAsync("game.png", CC_CALLBACK_1(LoadingScene::loadingCallBack, this));

void LoadingScene::loadingCallBack(Texture2D *texture)

{

//预加载帧缓存纹理

SpriteFrameCache::getInstance()->addSpriteFramesWithFile("game.plist", texture);

//预加载帧动画

auto birdAnimation = Animation::create();

birdAnimation->setDelayPerUnit(0.2f);

birdAnimation->addSpriteFrame(SpriteFrameCache::getInstance()->getSpriteFrameByName("bird1.png"));

birdAnimation->addSpriteFrame(SpriteFrameCache::getInstance()->getSpriteFrameByName("bird2.png"));

birdAnimation->addSpriteFrame(SpriteFrameCache::getInstance()->getSpriteFrameByName("bird3.png"));

AnimationCache::getInstance()->addAnimation(birdAnimation, "birdAnimation"); //将小鸟动画添加到动画缓存

//预加载音效

SimpleAudioEngine::getInstance()->preloadEffect("die.mp3");

SimpleAudioEngine::getInstance()->preloadEffect("hit.mp3");

SimpleAudioEngine::getInstance()->preloadEffect("point.mp3");

SimpleAudioEngine::getInstance()->preloadEffect("swooshing.mp3");

SimpleAudioEngine::getInstance()->preloadEffect("wing.mp3");

//加载完毕跳转到游戏场景

auto gameScene = GameScene::createScene();

TransitionScene *transition = TransitionFade::create(0.5f, gameScene);

Director::getInstance()->replaceScene(transition);

}

3,游戏主场景

3.1,背景和logo

用图片精灵即可

//添加游戏背景

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...