cocos2d-x学习笔记【一】创建自己的场景类
来源:互联网 发布:northwind数据库下载 编辑:程序博客网 时间:2024/04/30 12:46
本帖首发于自己新建的论坛网站:计算机专业学习网,www.hua2buxie.cn。有很多不懂,写的也不好,望大家见谅!欢迎大家去我的网站发帖留言或者发教程。
背景:
前段时间才开始学习cocos2d-x,搭建环境那些就不说了,朋友们在网上找下,我用的环境是cocox2d-x 3.x的。
创建自己的场景
新建场景,首先就得包括2个文件,其中一个.cpp还有一个.h头文件。我将名字命名为CMyScene类,对应的文件为MyScene.h和MyScene.cpp。在新建的CMyScene类中最基本包含了3个成员函数,分别是createScene();和bool init();和CREATE_FUNC(CMyScene);其中重点说的是CREATE_FUNC(CMyScene);这是一个宏。定义自己场景类的时候必须要这个。现在将完成后的.h代码贴出来:
#ifndef __MYSCENE_H__//判断是否重复包含头文件#define __MYSCENE_H__#include "cocos2d.h"//需要包含cocos2d-x头文件class CMyScene:public cocos2d::Layer//场景类派生于Layer层类{public: static cocos2d::Scene*createScene(); virtual bool init(); CMyScene();//空构造函数 ~CMyScene();//空析构函数 CREATE_FUNC(CMyScene);//这个很重要,这个是宏定义的,每个必须有、};#endif
然后需要在.cpp文件中实现:
#include "MyScene.h"USING_NS_CC;Scene* CMyScene::createScene(){ auto scene = Scene::create(); auto layer = CMyScene::create(); scene->addChild(layer); return scene;}bool CMyScene::init(){ if (!Layer::init()) { return false; }}CMyScene::CMyScene(){}CMyScene::~CMyScene(){}
上面这个CMyScene类就是自己定义的场景类。但是在启动的时候还不行,假如我们想在启动的时候转到这个场景类得在AppDelegate.cpp中的applicationDidFinishLaunching()函数中加这样一句:auto scene = CMyScene::createScene();
director->runWithScene(scene); // run这个就是利用导演类进行启动我们所需要的场景。假设是切换场景的时候就是用replacescene();
如果我但是这个场景所产生的就是一个黑框框场景。因为我们还没有添加任何东西。下次教大家如何往场景里面添加精灵等等。
这是附的图,这是最初的helloworld场景
这是我们创建的场景,只不过没有添加任何东西。
- cocos2d-x学习笔记【一】创建自己的场景类
- Cocos2d-x学习笔记一 创建场景
- Cocos2d-x学习笔记(一) 创建自己的Cocos2d-x项目
- Cocos2d-x创建和转换场景学习笔记
- Cocos2D-X学习3:创建一个新的场景
- cocos2D-x 3.x学习笔记【一】 创建新项目
- 【COCOS2D-X LUA学习】 场景创建
- cocos2d-x 3.0学习-创建菜单场景
- Cocos2d-x学习笔记(2)- 场景的基本元素
- cocos2d-x学习笔记(5)-- CCScene场景的切换
- cocos2d-x学习笔记4 场景的切换
- 【Cocos2d-x 3.0学习笔记】场景切换
- c++实现创建一个cocos2d-x的场景类
- cocos2d-x lua 场景的创建
- Cocos2d-x 3.x学习笔记:猩先生带你打飞机(四)游戏场景:背景与我机的创建、敌机的创建、物理世界构建
- 阿J的cocos2d-x学习笔记-元素消消看(一)-精灵的创建
- Cocos2d-x学习笔记(一)
- cocos2d-x 学习笔记(一)
- HDU3435-A new Graph Game KM
- Android子线程中更新UI的三种方法和获取message的两种方法总结
- 医道官途
- HDU2426-Interesting Housing Problem KM 稍微复杂一点
- 黑马程序员——网络编程之UDP协议
- cocos2d-x学习笔记【一】创建自己的场景类
- 接口回调
- HDU2853-Assignment KM 限制边的交换
- 黑马程序员——网络编程之TCP协议
- Android之greenDao的使用
- Java设计模式——六大原则
- Fragment间的通信
- 理解Fragment生命周期
- 黑马程序员——java面试题之基础语法