Email : hahayacoder@gmail.com
1 CCNode是cocos2d-x中一个很重要的类,CCNode是场景、层、菜单、精灵等的父类。而我们在使用cocos2d-x时,接触最多的就是场景、层、菜单、精灵等。所以有必要先弄懂CCNode类
2 CCObject类是cocos2d-x中所有对象的基类,CCObject封装了对象的引用计数和自动释放功能,下面是类图
3 因为场景、层、精灵、菜菜单是CCNode的子类,所以在使用它们时,有些方法来自CCNode,下面解释了CCNode中常用的方法
//初始化CCNode bool init(); //生成CCNode对象 CCNode * create(void); //获取描述字符串 便于调试 const char* description(void); //设置节点Z轴顺序 当有多个节点在Z轴显示时 引擎会根据它们Z轴的大小决定绘制顺序 Z轴大的会覆盖Z轴小的 void setZOrder(int zOrder); void _setZOrder(int z); //获取节点Z轴顺序 int getZOrder(); //设置OpenGL Z轴顶点 void setVertexZ(float vertexZ); //获取OpenGL Z轴顶点 float getVertexZ(); //设置节点X轴比例因子 void setScaleX(float fScaleX); //获取节点X轴比例因子 float getScaleX(); //设置节点Y轴比例因子 void setScaleY(float fScaleY); //获取节点Y轴比例因子 float getScaleY(); //设置节点比例因子 同时设置X轴、Y轴 void setScale(float scale); //获取节点比例因子 必须X轴、Y轴比例因子相等 float getScale(); //设置节点(x, y)在OpenGL中的坐标 void setPosition(const CCPoint &position); //获取节点(x, y)在OpenGL中的坐标 const CCPoint& getPosition(); //设置节点(x, y)在OpenGL中的坐标 void setPosition(float x, float y); //获取节点(x, y)在OpenGL中的坐标 void getPosition(float* x, float* y); //设置节点在OpenGL中的X坐标 void setPositionX(float x); //获取节点在OpenGL中的X坐标 float getPositionX(void); //设置节点在OpenGL中的Y坐标 void setPositionY(float y); //获取节点在OpenGL中的Y坐标 float getPositionY(void); //设置X轴的倾斜角度 void setSkewX(float fSkewX); //获取X轴的倾斜角度 float getSkewX(); //设置Y轴的倾斜角度 void setSkewY(float fSkewY); //获取Y轴的倾斜角度 float getSkewY(); //设置节点锚点的位置 void setAnchorPoint(const CCPoint& anchorPoint); //获取节点锚点的位置 const CCPoint& getAnchorPoint(); //设置节点的尺寸 void setContentSize(const CCSize& contentSize); //获取节点的尺寸 const CCSize& getContentSize(); //设置节点是否可见 void setVisible(bool visible); //获取节点是否可见 bool isVisible(); //设置节点自转角度 void setRotation(float fRotation); //获取节点自转角度 float getRotation(); //zOrder 当有多个节点在Z轴显示时 引擎会根据它们Z轴的大小决定绘制顺序 Z轴大的会覆盖Z轴小的 //添加子节点 zOrder默认为0 void addChild(CCNode * child); //添加子节点 void addChild(CCNode * child, int zOrder); //添加子节点 指定节点zOrder和节点tag void addChild(CCNode* child, int zOrder, int tag); //通过tag名称获取节点 CCNode * getChildByTag(int tag); //获取所有子节点 CCArray* getChildren(); //获取子节点数目 unsigned int getChildrenCount(void); //设置子节点的父节点 void setParent(CCNode* parent); //获取子节点的父节点 CCNode* getParent(); //从父节点中删除当前子节点 void removeFromParent(); //从父节点中删除当前子节点 如果Cleanup为true则删除当前节点的所有动作及回调函数 void removeFromParentAndCleanup(bool cleanup); //从父节点中删除当前子节点 如果Cleanup为true则删除当前节点的所有动作 void removeChild(CCNode* child); //从父节点中删除当前子节点 并指定Cleanup void removeChild(CCNode* child, bool cleanup); //通过tag名称移除节点 void removeChildByTag(int tag); //通过tag名称移除节点并指定Cleanup void removeChildByTag(int tag, bool cleanup); //移除所有子节点 void removeAllChildren(); //移除所有子节点 并指定Cleanup void removeAllChildrenWithCleanup(bool cleanup); //重新设定节点的zOrder void reorderChild(CCNode * child, int zOrder); //重新排序所有子节点 void sortAllChildren(); //获取节点的tag名称 int getTag(); //设置节点的tag名称 void setTag(int nTag); //获取节点的CCCamera摄像机 cocos2d-x是通过3D方式绘制2D效果 CCCamera* getCamera(); //判断当前节点是否在运行 bool isRunning(); //节点开始进入舞台时的回调事件 void onEnter(); //节点进入舞台时的回调事件 void onEnterTransitionDidFinish(); //节点离开舞台时的回调事件 void onExit(); //停止所有运行的动作和回调函数 void cleanup(void); //绘制节点 void draw(void); //递归visit子节点并重绘 void visit(void); //返回节点对象的矩形框(由坐标宽高组成) CCRect boundingBox(void); //设置CCActionManager对象被所有动作使用 void setActionManager(CCActionManager* actionManager); //获取被所有动作使用的CCActionManger CCActionManager* getActionManager(); //执行动作 CCAction* runAction(CCAction* action); //停止动作 stopAction(CCAction* action); //停止所有动作 void stopAllActions(void); //通过tag名称获取动作 CCAction* getActionByTag(int tag); //获取正在运行的动作数量 unsigned int numberOfRunningActions(void); //定义一个定时器 void schedule(SEL_SCHEDULE selector, float interval, unsigned int repeat, float delay); //定义一个定时器 void schedule(SEL_SCHEDULE selector, float interval); //取消一个定时器 void unschedule(SEL_SCHEDULE selector); //取消所有定时器 void unscheduleAllSelectors(void); //暂停所有定时器和动作 void pauseSchedulerAndActions(void); //恢复所有定时器和动作 void resumeSchedulerAndActions(void);
相关推荐
资源名称:Cocos2d-x实战:JS卷——Cocos2d-JS开发内容简介:本书是介绍Cocos2d-x游戏编程和开发技术书籍,介绍了使用Cocos2d-JS中核心类、瓦片地图、物理引擎、音乐音效、数据持久化、网络通信、性能优化、多平台...
在使用cocos2d-x开发游戏的过程中,为了实现逻辑和显示相分离。 在下通宵了一个晚上,写出了该事件类。 谨记,该事件只能用于cocos2d-x中。 事件发送者需要继承EventDispatcher类 事件接收者需要继承EventHandle类...
cocos2d-x-2.1.5
资源名称:大富翁手机游戏开发实战基于Cocos2d-x3.2引擎内容简介:李德国编著的《大富翁手机游戏开发实战(基于 Cocos2d-x3.2引擎)》使用Cocos2d-x游戏引擎技术,带领读者一步一步从零开始进行大富翁移动游戏的开发...
Cocos2d-x是移动跨平台开发最流行的游戏引擎,而本书是一本很全面的、比较‘接地气’的游戏开发教程。书中汇聚了热门手机游戏《捕鱼达人》开发的实战经验,作者从最基础的内容开始,逐步深入地介绍了Cocos2d-x的相关...
cocos2d-x-3.2下载,不多说。或者可以下载另一个资源 cocos引擎老版本集合(cocos2d-x-2.2.1 - 3.5) http://download.csdn.net/download/crazymagicdc/9982656
cocos2d-x实战项目 01.cocos2d-x原理及环境配置.rar 03.cocostudio使用方法及UI控制.rar 04.XML文件读取与骨骼动画.rarcocos2d-x实战项目 01.cocos2d-x原理及环境配置.rar 03.cocostudio使用方法及UI控制.rar 04.XML...
资源名称:Cocos2D-X游戏开发技术精解内容简介:Cocos2D-X是一款支持多平台的 2D手机游戏引擎,支持iOS、Android、BlackBerry等众多平台。当前,很多移动平台流行的游戏,都是基于Cocos2D-X开发的。 《Cocos2D-X...
经典版本 方便下载 源码 旧版本 3.8 官网找不到了 cocos2d-x-3.8.zip
这是我重新弄的cocos2d-x-3.0的类图.之前别人兄台弄的,有些不全面,有些地方错误.我这个可以说是最新的了.每个类添加了中文的详细注解,同时也添加了中文的类名称翻译.这样对cocos2d-x-3.0的框架比较好上手. 有兴趣的...
精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发
《Cocos2D-X游戏开发技术精解》详细介绍如何使用Cocos2D-X引擎开发自己的移动平台游戏。全书共15章,主要内容包括:Cocos2D-X引擎简介;如何建立跨平台的开发环境;引擎的核心模块——渲染框架;如何实现动态画面和...
Cocos2d-x 3.x游戏开发实战pdf含目录,内容详细,强烈推荐给大家。
Cocos2d-x windows vs2010 配置图文详解
Cocos2d-x游戏编程——C++篇(电子工业出版社,徐飞 著)书本配套的光盘代码,
Cocos2d-x实战 JS卷 Cocos2d-JS开发 PDF 电子书完整版本
cocos2d-x 动画工具 Flash2Cocos2d-x 1.3
cocos2d-x 3.0 人物行走 . 包里有代码和 图片资源.
因为最近在学cocos2d-x,找了半天在网上也找不到一个离线的文档,于是自己抽空做了一个,全部内容提取自cocos2d-x中文官网的文档页http://cn.cocos2d-x.org/article 目前只提取了cocos2d-x部分内容。因为内容比较多...
Cocos2d-x-3.x游戏开发之旅-钟迪龙著 全新pdf版和附书代码(代码为工程文件,可复制) 附带目录标签