cocos2dx进阶学习之CCTMXLayer】的更多相关文章

继承关系 CCTMXLayer -> CCSpriteBatchNode CCTMXLayer是在瓦片地图中,抽象一个层的类,它继承自CCSpriteBatchNode,也就是说它抽象了一批相同图片的精灵,在瓦片地图中,用层来抽象她们. 成员函数 CCSprite* tileAt(const CCPoint& tileCoordinate); 获取该坐标的精灵,这里的坐标是网格坐标 unsigned int  tileGIDAt(const CCPoint& tileCoordina…
继承关系 CCTMXTiledMap -> CCNode 它由CCNode派生,我们已经知道CCNode是cocos2dx的舞台对象的公共父类,所以CCTMXTiledMap也是个舞台对象 成员 static CCTMXTiledMap* create(const char *tmxFile); 通过一个文件,创建一个地图对象,这个文件是由工具编辑的地图文件 static CCTMXTiledMap* createWithXML(const char* tmxString, const char…
背景 在学习马里奥时,我们学习到从菜单场景到游戏场景的切换,代码如下 void CMMenuScene::OnStartCallBack( CCObject *pSender ) { CCDirector* pDirector = CCDirector::sharedDirector(); CCScene *pScene = CMGameScene::CreateGameScene(); pDirector->replaceScene(pScene); } 上面的代码调用了CCDirector:…
继承关系 CCScene -> CCNode -> CCObject CCScene抽象了一个场景的概念,类似舞台的一幕 函数 static CCScene *create(void); 静态创建函数,创建一个CCScene对象,并初始化以及调用autorelease函数让cocos2dx管理该对象生命周期 bool init(); 初始化函数,对该对象进行初始化 说明 CCScene从CCNode继承,因此更多的接口需要在CCNode里学习,CCNode是从编程角度的一个抽象,在CCNode…
背景 在学习cocos2dx时,我们在main函数中发现一句代码, #include "main.h" #include "AppDelegate.h" #include "CCEGLView.h" USING_NS_CC; int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) { UNREFEREN…
继承关系 CCEGLView-> CCEGLViewProtocol CCEGLView是窗口,在不同平台上有不同的实现,而CCEGLViewProtocol是CCEGLView定义的接口,所以学习CCEGLView,主要是要学习CCEGLViewProtocol中定义的接口. 类主要成员 CCEGLView(); 构造函数,初始化所有成员变量. virtual void end(); 删除窗口,做窗口清理工作 virtual bool    isOpenGLReady(); 判断是否可以绘图…
CCAction在cocos2dx中,抽象了节点的动作.它由CCObject派生,因此它不是渲染节点. 它经常的用法是,创建一个action,然后让某个CCNode对象(一般是精灵),去执行它. 在马里奥代码里,执行马里奥跳跃的代码如下: //增加跳跃运动 CCJumpTo *pJump = CCJumpTo::create(_MARIO_BASIC_JUMP_TIME_,ccp(getPositionX(),getPositionY()-10.f),_MARIO_BASIC_JUMP_HEIG…
之前学习了瓦片地图类,现在我们来学习下瓦片地图制作工具 这个是开源的工具,可以从网上下载,下面我们演示下怎么做地图 步骤1 将需要用到的图片放到一个目录下,比如我机器上就是d:\tiled,这些图片是基础纹理 步骤2 打开软件创建一个新的文件…
继承关系 CCSprite -> CCNodeRGBA       ->   CCNode, CCRGBAProtocol CCTextureProtocol 从继承关系可以看出,CCSprite也是一个CCNode的子类,在cocos2dx中,CCSprite抽象了舞台中的角色对象,类似舞台中的舞者,或者舞台中的某一个道具. 成员函数 static CCSprite* create(); static CCSprite* create(const char *pszFileName); st…
继承关系 CCLayer -> CCNode,CCTouchDelegate,CCAccelerometerDelegate,CCKeypadDelegate CCLayer在cocos2dx中抽象的是一个层,场景的一部分,CCLayer的父类很多,除了CCNode之外 还有CCTouchDelegate,CCAccelerometerDelegate,CCKeypadDelegate,这三个类都是用户输入处理代理 所以CCLayer在场景中,专门负责接收和处理用户的输入. 函数 static…