创建

1、新建类文件。注意文件夹为Classes下。否则文件不能正常找到。

2、改动预编译头。如用VS,默觉得#pragma once,为了兼容,改为#ifndef | #define | #endif

3、加入cocos2d.h头文件

4、继承cocos2d::Layer。默觉得private继承。通常须要改为public继承。

5、加入init()和CREATE_FUNC()

6、实现init()

7、加入createScene(),可选

最主要的代码:

//GameLayer.h

#ifndef _GAMELAYER_H
#define _GAMELAYER_H #include "cocos2d.h" class GameLayer : public cocos2d::Layer
{
public:
GameLayer();
~GameLayer();
public:
virtual bool init();
CREATE_FUNC(GameLayer);
public:
static cocos2d::Scene* createScene();
}; #endif // _GAMELAYER_H
// GameLayer.cpp

#include "GameLayer.h"

USING_NS_CC;

// 构造函数。如有对象成员,须要在此初始化
GameLayer::GameLayer()
{}
// 析构
GameLayer::~GameLayer()
{} //虚函数,初始化,当运行本类的create()函数时会被自己主动调用
bool GameLayer::init()
{
bool bl = Layer::init();
// 增加内容
return bl;
} // Scene的入口,通过该函数进入Layer
Scene* GameLayer::createScene()
{
auto scene = Scene::create();
auto layer = GameLayer::create();
scene->addChild(layer);
return scene;
}

进入

// 直接进入

auto layer = GameLayer::createScene();
Director::getInstance()->replaceScene(layer);
// 特效进入

auto layer = GameLayer::createScene();
auto slidein = TransitionSlideInL::create(1.0f, layer);
Director::getInstance()->replaceScene(slidein);
// 进入特效完之后才发生

//声明虚函数
virtual void onEnterTransitionDidFinish();

加入定时器

// GameLayer.h

private:
// 声明
void gameStep(float dt);
// GamaLayer.cpp

// 实现
void GameLayer::gameStep(float dt)
{
//bg->move();
}
void GameLayer::startGame()
{
// 调用
this->schedule(SEL_SCHEDULE(&GameLayer::gameStep), 0.02f);
}


Cocos2dx 3.x创建Layer的步骤的更多相关文章

  1. cocos2dx使用TiledMap创建斜45度地图场景

    做游戏,场景是一个很重要的部分,如果缺少这一步,很难做出好的游戏,对于cocos2dx来说,有很多2D的地图编辑器可以用,效果都还可以,其中Tiled是支持的比较好的,它支持Tiled编辑出来的几种模 ...

  2. TODO:GitHub创建组织的步骤

    TODO:GitHub创建组织的步骤 使用GitHub进行团队合作,写这个步骤主要作用是为了OneTODO作为一个团队组织进行代码的分享,让更多人来参与. 使用帐号.密码登录GitHub 2.右上角加 ...

  3. ABP创建数据库操作步骤

    1 ABP创建数据库操作步骤 1.1 SimpleTaskSystem.Web项目中的Web.config文件修改数据库配置. <add name="Default" pro ...

  4. 创建 Transact-SQL 作业步骤

    创建 Transact-SQL 作业步骤 在对象资源管理器中,连接到 SQL Server 数据库引擎实例,再展开该实例. 展开"SQL Server 代理",创建一个新作业或右键 ...

  5. 创建守护进程步骤与setsid() -- linux deamon进程

    原创:http://www.cnblogs.com/mickole/p/3188321.html 一,守护进程概述 Linux Daemon(守护进程)是运行在后台的一种特殊进程.它独立于控制终端并且 ...

  6. 使用Form Builder创建Form具体步骤

    使用Oracle Form Builder创建Form具体步骤 (Data Source为Table) 说明:当Block使用的Data Source为Table时,Form会自动Insert,Upd ...

  7. EA创建用例图步骤详解

    EA创建用例图步骤详解 1 创建一个项目 2 选择需要的模型 3 新建模型包 4 新建图表 5 新建模型包 6 创建用户角色Actor 7 新建用例 8 关联用户和用例 9 最后整个项目浏览器目录结构 ...

  8. 详解Oracle手动创建数据库几大步骤

    在这里我们将介绍Oracle手动创建数据库几大步骤,包括前期的准备工作,以及具体的实施. Oracle手动创建数据库是本文介绍的重点,希望通过本文能帮助大家更好的利用Oracle.51CTO也向您推荐 ...

  9. cocos2d-x 3.0 创建项目

    cocos2d-x 3.0 创建项目  点击打开链接

随机推荐

  1. HDU - 5036 Explosion

    Problem Description Everyone knows Matt enjoys playing games very much. Now, he is playing such a ga ...

  2. javascript 偏移量

    通过四个属性可以获得元素的偏移量: 1.offsetHeight: 元素在垂直方向上占用的空间的大小,(像素).包括元素的高度,(可见的)水平滚动条的高度,上边框高度和下边框高度. 2.offsetW ...

  3. 微软Ajax--UpdatePanel控件

    今天用做日历显示本月的考勤记录,用到了UpdatePanel控件,才发现对这个控件并不太了解,所以找了点儿资料,整理了一下给大家发上来! 一.UpdatePanel的结构 <asp:Script ...

  4. clearcase常用命令

    版本控制工具学习 http://www.itpxpj.com/course.do?method=getAllCourseInFront&classTypeId=21 1.[ClearCase] ...

  5. JDK 环境变量配置(Mac)

    Mac JDK 安装过后 修改 ~/. bash_profile 配置环境变量 修改内容: JAVA_HOME=$(/usr/libexec/java_home) export JAVA_HOME P ...

  6. Qt中用正則表達式来推断Text的语种,主要通过推断unicode的编码范围

    QString MainWindow::ParseLanguage(QString Text) {     if(Text.length()<=0)     {         return & ...

  7. Servlet的学习之Cookie

    从本篇开始学习Servlet技术中的Cookie专题. 首先来了解什么是“会话”.会话是web技术中的一个术语,可以简单的理解为:用户打开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭 ...

  8. .Net 4.0特性 Tuple元组

    Tuple 字面意思:元组.是.net4.0增加的新特性,是干什么的呢?总结一句,个人觉得这个东西 就是用来在有返回很多种类型的值时可以用到.它提供了8种类型的Tuple,直接看最复杂的那种(其实不是 ...

  9. clientdataset<---->json

    现在,DATASNAP倾向于使用JSON作为统一的数据序列格式,以期达到跨平台的效果.于是使用JSON便成为热点. unit uJSONDB;   interface uses SysUtils, C ...

  10. 【Demo 0002】Android 提醒框

    本章学习要点:   //==: Alert Dialog void showAlertDialog() { final Builder builder = new AlertDialog.Builde ...