cocos2d-x 学习历程
1. 了解cocos2d-x。官网 : www.cocos2d-x.org
2. 搭建cocos2d-x。
使用版本号cocos2d-x 3.0 搭建好开发环境教程:http://www.idcfree.com/article-1488-1.html
3. 无脑码农的cocos2d入门视频教程,视频使用版本号coco2d-x 2.0.1 网址:http://wnmn.sinaapp.com/?cat=3
4. 无脑码农与龙灵修的cocos2d公开课。
视频使用版本号cocos2d-x 2.0.4 网址:http://wnmn.sinaapp.com/?
cat=5
5. flappybird. flappybird的一个实现版本号。网址:http://blog.csdn.net/column/details/flappybird.html
6. tiled地图的使用。
在这篇教程中的忍者位置会显示有问题,要设置好忍者的锚点,并依据忍者的大小。改动忍者的位置。
另外。编译后的游戏中会显示一些黑线。要解决黑线问题见:http://www.cnblogs.com/jiackyan/archive/2013/04/14/3019927.html
7. TexturePacker使用。
8. 物理引擎
3.0简化了物理引擎的使用。
(1)在cocos2d-x3.0里面怎样使用物理引擎:弹球
(2)使用cocos2d-x3.0和物理引擎实现碰撞检測
该教程存在几个问题:
* 没有设置碰撞检測mask。
详细设置见:http://www.cocos2d-x.org/docs/manual/framework/native/physics/physics-integration/zh
* 碰撞回调函数设置时,CC_CALLBACK_2 改为 CC_CALLBACK_1。并将onContactBegin 的第一个參数去掉。
* 由于眼下存在的bug。当精灵的body设置为 body->setDynamic(false);时碰撞无法检測到。须要设置为true。设置当前的scene为带物理引擎的,并将当中的world设置为没有重力。m_world->setGravity(Vect::ZERO);
后两点的解决方式详细见:http://www.cocos2d-x.org/forums/6/topics/47452
(3)使用cocos2d-x3.0和物理引擎制作滚动背景
(4)使用cocos2d-x3.0和物理引擎制作简单的platformer游戏
(5)怎样使用cocos2d-x3.0和物理引擎来制作一个Breakout游戏
该教程存在两个问题:
*. 检測屏幕触摸事件时。没有设置onTouchBegan,仅仅有onTouchBegan的返回值为true,后面的操作move等才会运行。否则报错。
在原文中增加:
listener->onTouchBegan = [&](Touch *touch, Event *unused_event)->bool { return true; };就可以。
*. 存在(2)中相同的问题设置mask,改动回调函数类型,否则碰撞没有效果。
9. 重温flappy bird.
10. 重温cocos2d-x基础 http://subject.9ria.com/cocos2d0/index.html
内容有些老
11. cocoStudio 学习。
(1)基础 http://www.cocoachina.com/bbs/read.php?
tid=194065
(2)Cocos2d-x 3.0版本号加入CocoStudio库(VisualStudio)http://www.cocoachina.com/bbs/read.php?tid=194668&page=1
(3)CocoStudio Samples解说(含操作及代码实现,覆盖各个编辑器)
http://www.cocoachina.com/bbs/read.php?tid=194293
*demomap 地图
需解决这个问题:
1)引【#include "cocos-ext.h"】头文件出现编译错误。解决方式:项目名【HellCpp】右键【Properties】>【Configuration Properties】>【c/c++】->【General】在【Additional Include Directories】项中新增设置项【$(EngineRoot)】保存之后。又一次编译。
http://www.cocos2d-x.org/issues/3268
2)点击button始终存在问题。总是存在事件不能响应的问题。原因:alertpanel没有取消掉可点击选项,导致对地图层面的button产生了遮挡。
* SampleImageViewer 图片查看器
* demobag 背包
注意锚点。位置,世界坐标系,以及怎样推断当前的点在某个控件的范围内。
* DemoShop 商店
* SampleUIAnimation UI动画(普通帧。关键帧)
* SampleFrameAnimation 普通帧,关键帧
* SampleCollision 骨骼动画
* SampleParticle 粒子系统
Note:ArmatureDataManager::getInstance()->addArmatureFileInfo("Hero.ExportJson");
armature = Armature::create("Hero"); 名字要一致,否则出现alert。
* SampleFlashImport 导入flash
* SampleChangeEquip 换装系统
* DemoGameScene 游戏场景
* SamplesSceneEditor 游戏场景2
* DemoCowboyGame 游戏场景3 - 牛仔演示
12. 游戏<别救我> 实例教程。
包括了一个较为具体的制作流程。
包括中间使用的各种工具。
手机扫一扫
移动阅读更方便
你可能感兴趣的文章