cocos2d-x3.2场景切换

cocos2d-x3.2场景切换,第1张

概述1 2 3 4 5 6 7 8 9 10 11 12 13 14 //GameScene.h #include "cocos2d.h"   class  GameScene :  public  cocos2d::Layer { public :      static  cocos2d::Scene* createScene();        virtual  bool  init();  

1 2 3 4 5 6 7 8 9 10 11 12 13 14 //GameScene.h #include"cocos2d.h" class GameScene: public cocos2d::Layer { : static cocos2d::Scene*createScene(); virtual bool init(); voID menuCallback(cocos2d::Ref*pSender); CREATE_FUNC(GameScene); };

? 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
//GameScene.cpp #include"GameScene.h" #include"HelloWorldScene.h" USING_NS_CC; cocos2d::Scene*GameScene::createScene() { auto scene=Scene::create(); //创建一个场景 layer=GameScene::create(); //创建一个图层 scene->addChild(layer); return scene; } //初始化当前的图层 GameScene::init() { if (!Layer::init()) //初始化父类 return false ; //添加一个图片精灵 SizevisibleSize=Director::getInstance()->getVisibleSize(); //获取屏幕大小 sprite1=Sprite::create( "game.png" ); sprite1->setAnchorPoint(Point::ZERO); //设置锚点在左下角,原锚点位置在中心 sprite1->setposition(Point(0,0)); //sprite1->setposition(Point(visibleSize.wIDth/2,visibleSize.height/2)); this ->addChild(sprite1); //添加一个菜单层,当点击按钮时调用menuCallback方法 backItem=MenuItemImage::create( "Closenormal.png" , "CloseSelected.png" CC_CALLBACK_1(GameScene::menuCallback, )); backItem->setposition(Point(visibleSize.wIDth-50,50)); menu=Menu::create(backItem,NulL); menu->setposition(Point::ZERO); ->addChild(menu,1); true ; } @H_639_404@ //从游戏场景跳转到Hello场景 GameScene::menuCallback(cocos2d::Ref*pSender) { //方法一 //autoscene=HelloWorld::createScene();//创建一个新场景,因为原场景已删除 //Director::getInstance()->replaceScene(scene); //方法二 Director::getInstance()->popScene(); //原场景依然存在,直接出栈 }

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 //GameScene.h #include"cocos2d.h" class GameScene: public cocos2d::Layer { : static cocos2d::Scene*createScene(); virtual bool init(); voID menuCallback(cocos2d::Ref*pSender); CREATE_FUNC(GameScene); };

14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 //GameScene.cpp #include"GameScene.h" #include"HelloWorldScene.h" USING_NS_CC; cocos2d::Scene*GameScene::createScene() { auto scene=Scene::create(); //创建一个场景 layer=GameScene::create(); //创建一个图层 scene->addChild(layer); return scene; } //初始化当前的图层 GameScene::init() { if (!Layer::init()) //初始化父类 return false ; //添加一个图片精灵 SizevisibleSize=Director::getInstance()->getVisibleSize(); //获取屏幕大小 sprite1=Sprite::create( "game.png" ); sprite1->setAnchorPoint(Point::ZERO); //设置锚点在左下角,原锚点位置在中心 this ->addChild(sprite1); backItem=MenuItemImage::create( "Closenormal.png" "CloseSelected.png" )); menu->setposition(Point::ZERO); true ; } @H_639_404@ //从游戏场景跳转到Hello场景 GameScene::menuCallback(cocos2d::Ref*pSender) { //方法一 //autoscene=HelloWorld::createScene();//创建一个新场景,因为原场景已删除 //Director::getInstance()->replaceScene(scene); //方法二 Director::getInstance()->popScene(); //原场景依然存在,直接出栈 }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 //GameScene.h #include"cocos2d.h" class GameScene: public cocos2d::Layer { : static cocos2d::Scene*createScene(); virtual bool init(); voID menuCallback(cocos2d::Ref*pSender); CREATE_FUNC(GameScene); };

? 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
//GameScene.cpp #include"GameScene.h" #include"HelloWorldScene.h" USING_NS_CC; cocos2d::Scene*GameScene::createScene() { auto scene=Scene::create(); //创建一个场景 layer=GameScene::create(); //创建一个图层 scene->addChild(layer); return scene; } //初始化当前的图层 GameScene::init() { if (!Layer::init()) //初始化父类 return false ; //添加一个图片精灵 SizevisibleSize=Director::getInstance()->getVisibleSize(); //获取屏幕大小 sprite1=Sprite::create( "game.png" ); sprite1->setAnchorPoint(Point::ZERO); //设置锚点在左下角,原锚点位置在中心 this ->addChild(sprite1); backItem=MenuItemImage::create( "Closenormal.png" "CloseSelected.png" )); menu->setposition(Point::ZERO); true ; } @H_639_404@ //从游戏场景跳转到Hello场景 GameScene::menuCallback(cocos2d::Ref*pSender) { //方法一 //autoscene=HelloWorld::createScene();//创建一个新场景,因为原场景已删除 //Director::getInstance()->replaceScene(scene); //方法二 Director::getInstance()->popScene(); //原场景依然存在,直接出栈 }

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 //GameScene.h #include"cocos2d.h" class GameScene: public cocos2d::Layer { : static cocos2d::Scene*createScene(); virtual bool init(); voID menuCallback(cocos2d::Ref*pSender); CREATE_FUNC(GameScene); };

14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 //GameScene.cpp #include"GameScene.h" #include"HelloWorldScene.h" USING_NS_CC; cocos2d::Scene*GameScene::createScene() { auto scene=Scene::create(); //创建一个场景 layer=GameScene::create(); //创建一个图层 scene->addChild(layer); return scene; } //初始化当前的图层 GameScene::init() { if (!Layer::init()) //初始化父类 return false ; //添加一个图片精灵 SizevisibleSize=Director::getInstance()->getVisibleSize(); //获取屏幕大小 sprite1=Sprite::create( "game.png" ); sprite1->setAnchorPoint(Point::ZERO); //设置锚点在左下角,原锚点位置在中心 this ->addChild(sprite1); backItem=MenuItemImage::create( "Closenormal.png" "CloseSelected.png" )); menu->setposition(Point::ZERO); true ; } @H_639_404@ //从游戏场景跳转到Hello场景 GameScene::menuCallback(cocos2d::Ref*pSender) { //方法一 //autoscene=HelloWorld::createScene();//创建一个新场景,因为原场景已删除 //Director::getInstance()->replaceScene(scene); //方法二 Director::getInstance()->popScene(); //原场景依然存在,直接出栈 } 总结

以上是内存溢出为你收集整理的cocos2d-x3.2场景切换全部内容,希望文章能够帮你解决cocos2d-x3.2场景切换所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1043705.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存