Cocos2dx开发必须了解的基本元素

发布时间:2017-2-27 10:26:29 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"Cocos2dx开发必须了解的基本元素",主要涉及到Cocos2dx开发必须了解的基本元素方面的内容,对于Cocos2dx开发必须了解的基本元素感兴趣的同学可以参考一下。

Cocos2dx基本元素关系图如下: 既然cocos2d-x都帮我们封装好了,使得开发与平台无关,那接下来我们就单纯地开始好好玩游戏吧!这几篇是对cocos2d-x一些基本且重要的元素进行解释和API介绍,之前没有系统的看过API,有时候某些功能引擎都已经提供好了,不知道还是会自己去写。所以全面地了解一下是必须的。 导演类CCDirector 既然cocos2d-x都帮我们封装好了,使得开发与平台无关,那接下来我们就单纯地开始好好玩游戏吧!这几篇是对cocos2d-x一些基本且重要的元素进行解释和API介绍,之前没有系统的看过API,有时候某些功能引擎都已经提供好了,不知道还是会自己去写。所以全面地了解一下是必须的。 1.概况 导演类CCDirector是cocos2d-x引擎中非常重要的一个类,它是一个抽象类(mainloop空实现),主要完成以下工作: (1)初始化游戏和销毁游戏 (2)管理调度场景 (3)调整设置openGL信息 (4)获取、设置游戏的相关细节 节点类CCNode 1.概况 CCNode直接从CCObject继承而来,有如下几个特点: (1)可以包含其他CCNode节点,可以进行添加/获取/删除子节点操作。 (2)可以执行周期性的回调任务。 (3)可以执行动作。 场景类CCScene和布景类CCLayer 1.场景类:CCScene CCScene类继承于CCNode,它的实现很简单,就是基本上没添加什么内容。。。它只是作为一个容器(父节点)的抽象概念存在。对比CCNode差别有: (1)构造函数中设置了不使用锚点定位,而是使用了坐标原点,即使设置了锚点也不起作用。 m_bIgnoreAnchorPointForPosition是CCNode的属性,用于CCScene和CCLayer。 [cpp] view plaincopy m_bIgnoreAnchorPointForPosition = true;   (2)在init中设置场景的大小。节点的初始化大小为CCSizeZero,也就是没有大小。CCScene初始化时设置了场景的大小,即窗口大小。 [cpp] view plaincopy this->setContentSize(pDirector->getWinSize());   2.布景类:CCLayer CCLayer相对CCScene而言会比较麻烦一点,因为他不仅要作为容器使用,而且还要实现一些游戏功能,所以它继承了CCTouchDelegate,CCAccelerometerDelegate和CCKeypadDelegate,这三个类是用来处理触摸事件,重力感应事件和键盘事件的,默认初始化都是不可用,需要手动设置开启。 (1)CCLayer和CCScene的初始化差不多,也是构造函数中设置不使用锚点定位,init函数中设置了层的大小,即窗口大小。 精灵类CCSprite 精灵类CCSprite可以说是游戏的主角了,也是我们平时最常用到的类。 1.概况 CCSprite本质上就是一个二维图片,是静态的。游戏中的动画只不过是让一张张静态图片快速更换达到的动态效果。CCSprite继承于CCNodeRGBA,并实现了CCTextureProtocol的接口。因此CCNodeRGBA所具有的RGB和透明值这些属性和接口CCSprite都有。 动作类CCAction 灵也出来了,但是不会动的精灵是木有用的。。。CCAction就是负责来解决精灵运动的问题。 1.概况 CCAction直接从CCObject继承而来,注意它代表的是一个动作,是动词。精灵执行了这个动作,而不是名词。CCAction本身并没有什么功能,主要是定义了一些通用函数和虚函数让子类实现多态性。

上一篇:Android强制设置横屏或竖屏
下一篇:GridBagLayout 使用方法applet

相关文章

相关评论

本站评论功能暂时取消,后续此功能例行通知。

一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!

二、互相尊重,对自己的言论和行为负责。