曾经学cocos2d-x的时候听过,这个引擎就跟拍电影一样,有导演(Director),有大背景(Scene),还有背景上的小修饰物(Layer),还有人物(Sprite)。 大体关系就是酱紫啦~ 再上一张图,没图我说个X(屏蔽不良语言) ---偶是切割线。加个小凝视--- 这里有一张cocos2d-x全部类的一张关系图表。是用Xmin做的,我看着非常...
Layer 游戏中的背景容器,Layer类是Node类的一个子类,它实现了触屏事件代理(TouchEventsDelegate)协议。 LayerColor是Layer的一个子类,它实现了RGBAProtocol协议。 LayerGradient是LayerColor的一个子类,它在背景上画渐变效果。 LayerMultiple类是一个能够使它的子类进行复用的布景层类。 Sprite精灵不能直接放入舞台中,它...
autolayer1=LayerColor::create(Color4B(0,128,128,255));//创建一个layer,并设置了其着色 layer1->setContentSize(Size(120,80));//设置其大小 layer1->setPosition(Point(150,150));//设置其位置 addChild(layer1,10);//向场景中添加它,并设置其深度 autolayer2=LayerColor::create(Color4B(128,0,1...
Cocos2d-x的菜单中提供了生成带颜色的Layer的方式,他们都继承于CCLayer,如下图 本来还有一个CCColorLayer,但是他和CCLayerColor一样,在v1.01版本中已经被删去了,这里只讨论CCLayerColor和CCLayerGradient 1.CCLayerColor 就是生成一个带颜色的层,其高度和宽度可以自定义,如下api 三个参数就是第一个是color,后两...
ErasableLayer*ErasableLayer::create(Node*layer,Sprite*erasa){ ErasableLayer*ret=newErasableLayer; if(ret->init(layer,erasa)) { ret->autorelease(); returnret; } deleteret; returnnullptr; } ErasableLayer*ErasableLayer::create(Node*layer,constchar*erasaPath){ ...
1、假设自己init 和CCLayer ::init 没有差别 2、initWithColor第一个參数ccc4(R,G,B,透明度)透明度通常是255 CCLayerColor *layer = CCLayerColor::create(ccc4(255,0,0,255),240,120); //描点在右下角 //create(ccc4(R,G,B,透明度),x,y); ...
Layer::init() ) { return false; } Size visibleSize = Director::getInstance()->getVisibleSize(); Vec2 origin = Director::getInstance()->getVisibleOrigin(); Sprite *bg = Sprite::create("menu/background.png"); bg->setPosition(Vec2(origin.x + visibleSize.width/2, origin.y + visibleSize...
创建场景以及HelloWord这个层,然后把层放到场景里 通过addChild这个方法,把子节点加到父节点里面去 以此类推,可以把Layer添加到Scene里,也可以这样把精灵,菜单等添加到层里 代码语言:javascript 代码运行次数:0 运行 AI代码解释 this->addChild(menu,1);//把菜单放到当前层//把标签加入到层中this->addChild(labe...
颜色布景层类CCLayerColor是CCLayer类的子类,包含CCLayer类的特性,并且有两个拓展功能:可以为布景层增添颜色,以及设置不透明度。 首先看CCLayerColor类的定义初始化,如代码清单3-18所示。这段代码是tests项目下LayerTest.cpp文件中LayerTest1的onEnter函数。 代码清单3-18 CCLayerColor类的定义初始化 void LayerTest1...
node()方法很方便,集合了new,init,autorelease等方法,可以减少调用者的代码量。但由于每份node方法的代码都类似,我们就做了两个宏来方便大家 LAYER_NODE_FUNC和SCENE_NODE_FUNC. 如果想使用这两个宏,就必须在派生类里实现bool init()方法。 3. 关于构造函数和init方法。cocos2d-x在从objc改写为cpp时,并不是...