读书笔记Cocos2d-x之场景、层
来源:互联网 发布:ai人工智能教程 编辑:程序博客网 时间:2024/05/18 19:20
Scene:场景
在Cocos2d-x中,Scene定义了一个场景。场景只是层的容器,包含了所有需要显示的游戏元素。场景还有一个作用就是流程控制。利用Director::replaceScene等方法,可以使游戏在不同场景中自由切换。
Layer:层
Layer定义了一个层,同场景类似,层也扮演着容器的角色。然而与场景不同的是,层通常包含的是直接呈现在屏幕上的具体内容:我们需要在层中放入精灵、文本标签或其他游戏元素;设置游戏元素的属性,如位置、方向和大小;设置游戏元素的动作等。由此可见,游戏开发的大部分编码时间都用在创建层上。通常层中的对象功能类似,耦合较紧,与层中游戏内容相关的逻辑代码也编写在层中。
在组织好层后,只需要把层按照顺序添加到场景中就可以显示出来了
(1)addChild方法:其中child参数为将要添加的节点。对于场景来说,通常我们添加的节点就是层。先添加的层会被置于后添加的层之下。如果想要为它们指定先后次序,可以使用不同的zOrder值,zOrder代表了该节点下元素的先后次序,值越大则显示顺序越靠上。zOrder的默认值为0.tag是元素的标识码,如果为子节点设置了tag值,就可以在她的父节点中利用tag值找到它。
1、Node::addChild(Node *child)
2、Node::addChild(Node *child, int zOrder)
3、Node::addChild(Node *child, int localZOrder, int tag)
例:
this->addChild(backgroundLayer,0);
this->addChild(actionLayer,100);
this->addChild(touchLayer,200);
this->addChild(menuLayer,500);
(2)Layer输入事件:
1. Layer::setTouchEnabled(bool enabled):获取或设置是否接受触摸事件
2.Layer::setAccelerometerEnabled(bool enabled):获取或设置是否接受加速度计事件
3.Layer::setKeypadEnabled(bool enabled):获取或设置是否启用键盘输入支持
4.带目标的触摸事件的回调函数:ccTouchBegan, ccTouchEnded, ccTouchMoved, ccTouchCancelled,
5. 标准触摸事件的回调函数:ccTouchesBegan,ccTouchesMoved,ccTouchesEnded,ccTouchesCancelled
6.注册触摸事件的回调函数,在此函数内设置需要注册的触摸类型:registerWithTouchDispatcher
7.加速度计改变事件的回调函数:didAccelerate
- 读书笔记Cocos2d-x之场景、层
- cocos2d-x之场景
- Cocos2d-x 下的场景,层,精灵
- cocos2d-x 基础--导演,场景,层,精灵
- cocos2d-x场景与层的使用
- 【cocos2d-x游戏开发】场景和层
- cocos2d-x导演,层,场景,精灵
- Cocos2d-x之场景切换
- Cocos2d-x之场景切换
- Cocos2d-x 之场景切换
- 读书笔记Cocos2d-x之Director
- cocos2d-x之图层
- 读书笔记cocos2d-x之新建cocos2d工程
- Cocos2d-x基础:TestCpp之场景切换
- cocos2d-x源码剖析之场景管理
- Cocos2d-x 之场景类(CCScene)
- cocos2d-x学习之场景切换
- 【爱上cocos2d-x之五】场景CCScene
- UVA 11584 Partitioning by Palindromes
- 收藏下 jquery 选择器总结
- HashTable HashMap TreeSet TreeMap性能测试,比较。
- ios小数向上、下取整,计算结果向上、下取整
- 二值图像的腐蚀运算及其VC实现
- 读书笔记Cocos2d-x之场景、层
- Linux-网桥原理分析
- Ubuntu登陆密码忘记后找回方式
- startActivityForResult使用步骤分解
- 从零开始机器学习实战2-Matplotlib绘图
- 《ARM与Linux些许问题》第四章:ARM平台系统调用原理分析
- intellij 中设置内存大小
- iOS通知的实现
- replaceAll和replace的替换差别