cocos2d-x ParallaxNode 视差节点
来源:互联网 发布:淘宝开店资料出售 编辑:程序博客网 时间:2024/05/21 14:01
版本为cocos2d-x 3.2
它的作用就是让子节点以不同的速率运动,比如让一个节点运动的慢一点,一个节点运动的快一点,体现出的效果就是远处的景物运动的慢一点,近处的景物移动的快一点。简单实现代码如下:
// ParallaxNode.h#ifndef __Demo__ParallaxNode__#define __Demo__ParallaxNode__#include <iostream>#include "cocos2d.h"USING_NS_CC;class ParallaxNodeTest : public Layer{public: static cocos2d::Scene* createScene(); virtual bool init(); CREATE_FUNC(ParallaxNodeTest); private: Size size; Sprite* sprite; ParallaxNode* parallax;};#endif /* defined(__Demo__ParallaxNode__) */
// ParallaxNode.cpp#include "ParallaxNode.h"#include "cocos2d.h"USING_NS_CC;Scene* ParallaxNodeTest::createScene(){ auto scene = Scene::create(); auto layer = ParallaxNodeTest::create(); scene->addChild(layer); return scene;}bool ParallaxNodeTest::init(){ if (!Layer::init()) { return false; } size = Director::getInstance()->getVisibleSize(); sprite = Sprite::create("Icon.png"); Sprite* bg = Sprite::create("HelloWorld.png"); bg->setAnchorPoint(Vec2(0, 0)); parallax = ParallaxNode::create(); // 第一个参数是要添加的节点,第二个是zOrder,第三个参数是速率,这里写得是(0.5,0)意思就是parallax向左移动的1个单位的时候, // bg1移动的就是0.5个单位,y方向上没有速度,最后一个是坐标,注意这个坐标是相对于node节点的坐标,而不是当前的层 parallax->addChild(bg, 1, Vec2(0.5, 0), Vec2(0, 0)); parallax->addChild(sprite, 2, Vec2(2.0, 0), Vec2(Vec2(400, 200))); ActionInterval* goUp = MoveBy::create(1, Vec2(0, -500)); ActionInterval* goDown = goUp->reverse(); ActionInterval* go = MoveBy::create(2, Vec2(-500, 0)); ActionInterval* goBcak = go->reverse(); FiniteTimeAction* seq = Sequence::create(goUp, go, goDown,goBcak,NULL); parallax->runAction(RepeatForever::create((ActionInterval*) seq)); this->addChild(parallax); return true;}
0 0
- cocos2d-x ParallaxNode 视差节点
- cocos2d-x 视差节点 ParallaxNode 边界值判断
- 视差节点ParallaxNode
- ParallaxNode视差节点
- ParallaxNode视差
- cocos2d-x 基础系列 (12) ParticleFireworks ParallaxNode示例
- ParallaxNode
- [Cocos2d-x]视差滚屏效果的实现
- cocos2d-x节点(CCActionPageTurn3D)API
- cocos2d-x节点(CCScene)API
- 【Cocos2d-x】节点裁剪 ClippingNode
- cocos2d-x 节点裁切
- cocos2d-x节点(cocos2d.h)API
- Cocos2d-x 3.x ClippingNode裁剪节点
- 视差节点CCParallaxNode
- cocos2d-x自制工具:打印cocos2d-x的节点树
- Cocos2d-x 绘制节点的流程
- Cocos2d-X中的节点类CCNode
- HDU4994-Revenge of Nim(博弈)
- FS210无线网卡驱动移植
- Java transient
- 程序员面试、算法研究、编程艺术、红黑树、数据挖掘5大系列集锦
- 超级大水贴
- cocos2d-x ParallaxNode 视差节点
- XMLSpy使用流程
- Centos安装LAMP
- http://weibo.com/p/1001603753836513777062
- java浏览本地文件夹,打印内容
- hive的MapJoin机制
- 摄像头代码浅析
- ubuntu下关闭和开启防火墙
- [金融类笔试] 程序员笔试题--民生银行