在HelloWorld上--建立新场景

本文介绍如何使用Cocos2d-x创建一个名为CMyFirstScene的新场景,并展示了如何通过代码实现基本的场景搭建和元素添加。此外还提供了从其他场景跳转到此新创建场景的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

添加新文件 

命名为:CMyFirstScene,

.CPP和.h 文件分别填上以下内容

  1. //
  2. // CMyFirstScene.cpp
  3. // linker
  4. //
  5. // Created by HeJiasheng on 14-3-12.
  6. //
  7. //
  8. #include "CMyFirstScene.h"
  9. USING_NS_CC;
  10. Scene* CMyFirstScene::createScene()
  11. {
  12. // 'scene' is an autorelease object
  13. auto scene = Scene::create();
  14. // 'layer' is an autorelease object
  15. auto layer = CMyFirstScene::create();
  16. // add layer as a child to scene
  17. scene->addChild(layer);
  18. // return the scene
  19. return scene;
  20. }
  21. bool CMyFirstScene::init()
  22. {
  23. if(!CCLayer::init())
  24. {
  25. return false;
  26. }
  27. auto label = LabelTTF::create("New Scene", "Arial", 24);
  28. // position the label on the center of the screen
  29. label->setPosition(Point(200,300));
  30. // add the label as a child to this layer
  31. this->addChild(label, 1);
  32. // do something
  33. return true;
  34. }
  1. #ifndef __linker__CMyFirstScene__
  2. #define __linker__CMyFirstScene__
  3. #include "cocos2d.h"
  4. class CMyFirstScene : public cocos2d::CCLayer
  5. {
  6. public:
  7. static cocos2d::Scene* createScene();
  8. // 初始化
  9. virtual bool init();
  10. CREATE_FUNC(CMyFirstScene);
  11. };
  12. #endif /* defined(__linker__CMyFirstScene__) */

在 HelloWorld.cpp 回调函数添加如下:

  1. void HelloWorld::imageMenuCallback(Object* pSender)
  2. {
  3. CCLog("ImageMenu");
  4. CCTransitionScene* transiton =CCTransitionProgressRadialCW::create(1.2f, CMyFirstScene::createScene());
  5. CCDirector::sharedDirector()->replaceScene(transiton);
  6. }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值