[cocos2d-x 学习] Scene(场景)学习
CCScene简介
CCScene is a subclass of CCNode that is used only as an abstract concept.CCScene an CCNode are almost identical with the difference that CCScene has it's anchor point (by default) at the center of the screen.For the moment CCScene has no other logic than that, but in future releases it might have additional logic.It is a good practice to use and CCScene as the parent of all your nodes.
CCScene用法
#ifndef __SCENETEST__
#define __SCENETEST__#include "cocos2d.h"
#include "SimpleAudioEngine.h"class Sceneclass : cocos2d::CCLayerColor {
public:Sceneclass();~Sceneclass();// 初始化scenestatic cocos2d::CCScene* scene();virtual void onEnter();// 菜单点击回调函数void popScene(cocos2d::CCObject* sender);void pushScene(cocos2d::CCObject* sener);void replaceScene(cocos2d::CCObject* sender);// 添加菜单void addMenu(CCLayer* layer);
};#endif
CDirector::sharedDirector()->pushScene 方法
CCDirector::sharedDirector()->replaceScene 方法
#include "SceneTest.h"using namespace cocos2d;CCScene* Sceneclass::scene()
{CCScene* scene = CCScene::create();Sceneclass* layer = new Sceneclass();layer->autorelease();scene->addChild(layer);return scene;
}Sceneclass::Sceneclass()
{// 记得初始化CCLayerColor::initWithColor(ccc4(255, 255, 255, 255));
}void Sceneclass::onEnter()
{// 初始化父类CCLayerColor::onEnter();this->addMenu(this);CCLog("onEnter");
}void Sceneclass::popScene(CCObject* sender)
{// 弹出当前scene堆栈最顶sceneCCDirector::sharedDirector()->popScene();CCLog("popScene");
}void Sceneclass::pushScene(CCObject* sender)
{CCLog("pushScene");CCScene* scene = CCScene::create();Sceneclass* layer = new Sceneclass();layer->autorelease();layer->setColor(ccc3(76, 67, 76));// 初始化菜单this->addMenu(layer);scene->addChild(layer);// 把当前scene压入到scene堆栈,之前一个并没有清楚CCDirector::sharedDirector()->pushScene(scene);
}void Sceneclass::replaceScene(CCObject* sender)
{CCScene* scene = CCScene::create();Sceneclass* layer = new Sceneclass();layer->autorelease();layer->setColor(ccc3(233, 23, 45));// 初始化菜单this->addMenu(layer);scene->addChild(layer);// 替换当前scene,清除前一个sceneCCDirector::sharedDirector()->replaceScene(scene);CCLog("replaceScene");
}void Sceneclass::addMenu(CCLayer* layer)
{// 添加菜单CCMenuItemFont* item1 = CCMenuItemFont::create("popScene", this, menu_selector(Sceneclass::popScene));CCMenuItemFont* item2 = CCMenuItemFont::create("pushScene", this, menu_selector(Sceneclass::pushScene));CCMenuItemFont* item3 = CCMenuItemFont::create("replaceScene", this, menu_selector(Sceneclass::replaceScene));CCMenu* menu = CCMenu::create(item1, item2, item3, NULL);menu->alignItemsVertically();menu->setColor(ccc3(0, 0, 0));layer->addChild(menu, 1);
}Sceneclass::~Sceneclass()
{}
效果:
[cocos2d-x 学习] Scene(场景)学习相关推荐
- 基于深度学习的场景分割算法研究综述
基于深度学习的场景分割算法研究综述 人工智能技术与咨询 来自<计算机研究与发展> ,作者张 蕊等 摘 要 场景分割的目标是判断场景图像中每个像素的类别.场景分割是计算机视觉领域重要的基本问 ...
- Blender创建三维教室场景学习教程 3D Classroom Environment Creation in Blender
流派:电子学习| MP4 |视频:h264,1280×720 |音频:AAC,48.0 KHz 语言:英语+中英文字幕(根据原英文字幕机译更准确)|大小解压后:3.73 GB 含课程文件 |时长:4h ...
- 在UE5创造一个多山的松树森林场景学习教程
UE5游戏场景设计制作视频教程 大小解压后:4.37G 1920X1080 mp4 语言:英语+中英字幕(机译)时长:5小时 20分 课程获取:在UE5创造一个多山的松树森林场景学习教程
- Blender从头到尾创建一个低多边形场景学习教程
Low Poly Landscapes – Blender Bite Sized Course 流派:电子学习| MP4 |视频:h264,1280×720 |音频:AAC,48.0 KHz 语言:英 ...
- 深度学习实现场景字符识别模型|代码干货
作者|李秋键 出品|AI科技大本营(ID:rgznai100) # 前言 # 文字是人从日常交流中语音中演化出来,用来记录信息的重要工具.文字对于人类意义非凡,以中国为例,中国地大物博,各个地方的口音 ...
- felzenszwalb算法_学习图像场景解析的理论和应用(二)场景解析的经典算法分析之SLIC...
2003 年,任晓峰教授在图像分割技术层面上提出了超像素分割的这一概念,是指具有相似纹理.颜色.亮度等特征的相邻像素构成的有一定视觉意义的不规则像素块.它利用像素之间特征的相似性将像素分组,用少量的超 ...
- 基于深度学习、强化学习、开源RASA对话引擎的多场景对话机器人
向AI转型的程序员都关注了这个号???????????? 机器学习AI算法工程 公众号:datayx Chatbot_CN 是一个基于第三代对话系统的多轮对话机器人项目,旨在于开发一个结合规则系统 ...
- 推荐搜索系统中关于多场景学习的常见方法
今天的博文主要参考了以下材料: 1 2020年阿里<Scenario-aware and Mutual-based approach for Multi-scenario Recommendat ...
- 什么是迁移学习?迁移学习的场景与应用
作者:机器之心 链接:https://www.zhihu.com/question/41979241/answer/208177153 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业 ...
最新文章
- 【JVM调优系列】----NewRatio与SurvivorRatio
- 浅析大规模DDOS防御架构:应对T级攻防
- 大班运用计算机教学案例,幼儿园大班体验课程教学案例
- 简单探索MNIST(Softmax回归和两层CNN)-Tensorflow学习
- 【SpringBoot高级】SpringBoot整合篇
- maven2打包不同jdk版本的包
- 微信授权,重定向两次
- python写鼠标宏_最全Pycharm教程(24)——Pycharm编辑器功能之宏定义
- js css自动幻灯片切换,非常漂亮的JS+CSS图片幻灯切换特效
- 计算机网络课设中:cisco关于nat的静态配置
- 【.Net】asp.net 把图片从CMYK印刷模式转换为RGB原色模式
- 闲谈绩效考核——来自项目管理群的讨论
- flv网页播放器开源代码
- 投入产出表matlab,投入产出分析投入产出表.doc
- 一个“蝇量级” C 语言协程库 -- Protothreads
- JSP+MYSQL网上作业提交及管理系统
- 关于单选框以及复选框的css美化方法
- iOS 生成二维码 原生代码
- ACM-ICPC竞赛模板
- dingtalk 一个让钉钉服务端开发更简单的golang工具库