创建

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. 将某个MySQL库中的UTF8字符列都转成GBK格式

    DELIMITER $$ DROP PROCEDURE IF EXISTS `dba`.`Proc_ChangeCharacter2GBK`$$ CREATE DEFINER=`root`@`%` P ...

  2. MSSQL - 存储过程取出5条热点新闻

    USE [DB_News] GO /****** Object: StoredProcedure [dbo].[SelectHotNews] Script Date: 2015/7/8 13:34:4 ...

  3. 重操JS旧业第十一弹:BOM对象

    BOM对象即浏览器内置对象,现今流行的浏览器内核有Safri,Firefox,Chrome,Opera,IE其中IE的兼容性是最蛋疼的在10及其过后还好点,但是现在IE基本上淘汰,而国内像360这种垃 ...

  4. 基于visual Studio2013解决面试题之0602全排列

     题目

  5. Codeforces Round #306 (Div. 2) D.E. 解题报告

    D题:Regular Bridge 乱搞. 构造 这题乱搞一下即可了.构造一个有桥并且每一个点的度数都为k的无向图. 方法非常多.也不好叙述.. 代码例如以下: #include <cstdio ...

  6. JSP的学习(5)——语法知识三之include指令

    本篇继续来对JSP语法中的JSP指令进行学习,在<JSP的学习(3)——语法知识二之page指令>中,已经介绍了JSP指令的书写格式和page指令的详细信息,所以在这一篇中我们会对JSP指 ...

  7. 几十篇GDI以及MFC自绘的文章

    http://www.cnblogs.com/lidabo/category/434801.html

  8. 汉字转拼音再转ASCII

    汉字能够转成拼音.能够在转成ASCII码,然后就能够转成十六进制数,再就能够转成0和1组成的二进制帧了! 比方说: 我爱你 -> wo ai ni -> 119 111 32 97 105 ...

  9. Codeforces Round #218 (Div. 2)

    500pt, 题目链接:http://codeforces.com/problemset/problem/371/A 分析:k-periodic说明每一段长度为k,整个数组被分成这样长度为k的片段,要 ...

  10. Lucene.Net 2.3.1开发介绍——附录一、如何下载Lucene.Net的各种版本

    原文:Lucene.Net 2.3.1开发介绍--附录一.如何下载Lucene.Net的各种版本 首先,你需要一个svn客户端.TortoiseSVN非常好用,可以从官方网站下载.下载地址:http: ...