关于Cocos2d-x项目运行的过程

1.AppDelegate.cpp文件里面的applicationDidFinishLaunching函数其实可以看做C语言里面的main函数,是整个游戏运行的入口

这个函数里面的语句

auto scene = HelloWorld::createScene();    //创建一个HelloWorld类型的场景,其实是一个带着层,层中带着节点的场景

// run
director->runWithScene(scene);  //运行这个场景

2.HelloWorld类是一个继承自层的类,.h文件里面有三个函数的声明,第二个和第三个是自己的初始化函数和构造函数,第一个是创建场景特意写的一个函数声明,HelloWorld是一个继承自层却可以创建场景的特殊类

static cocos2d::Scene* createScene();

virtual bool init();

CREATE_FUNC(HelloWorld);

3.HelloWorld.cpp文件有两个函数的定义,分别是.h文件里面第一个和第二个函数的定义,把自己的构造函数的定义省略了

Scene* HelloWorld::createScene()
{
  auto scene = Scene::create();   //创建一个场景实例

  auto layer = HelloWorld::create();  //创建一个HelloWorld类型的层实例,这里会调用默认的构造函数和HelloWorld::init函数

  scene->addChild(layer);  //把这个层实例添加到了场景实例中

  return scene;  //返回场景实例

}

4..HelloWorld.cpp文件中的init函数的定义,是HelloWorld类自己的初始化定义,在HelloWorld::create()被调用时调用,是对实例层的定义

if ( !Layer::init() )  //先执行父类init
{
  return false;
}

auto rootNode = CSLoader::createNode("MainScene.csb");  //创建一个节点(其实可以是各种类型的节点,Node,Sprite...)

addChild(rootNode);  //添加节点到层实例

return true;  //init成功,返回true

}

注意:

刚开始的时候,节点的添加可以直接在HelloWorld的init函数的定义中直接auto相应的对象并获得实例,再把实例添加到HelloWorld层中来显示,这里还要设置节点的位置(节点的大小还有其他属性在各自类的init函数中定义),后期要把这些节点的添加代码另外用一个GameController类来管理

时间: 2024-08-14 23:45:42

关于Cocos2d-x项目运行的过程的相关文章

log4j 日志信息的引入(通用版)——解决项目运行过程中的日志信息

定义 log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.GUI组件,甚至是套接口服务器.NT的事件记录器.UNIX Syslog守护进程等:我们也可以控制每一条日志的输出格式:通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程.最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码. 一.log4j.properties 的使用详解 1.输出级别的种类 ERROR.WARN.INFO.D

Native项目迁入React-Native过程中遇到的坑(0.4x版本)

转载请注明出处王亟亟的大牛之路 最近都在忙着搭架子,找框架,谈需求和开会.甚至都没有时间好好装逼,昨天帮安卓的小伙把项目从安卓整体迁移到了RN的项目下面,过程中遇到很多不可描述的坑,这里给大家分享下经验 先安利,安卓收纳库:https://github.com/ddwhan0123/Useful-Open-Source-Android React-Native收纳库:https://github.com/ddwhan0123/Useful-Open-Source-React-Native 由来

简述vue项目运行方法

首先,列出来清单: node.js环境(npm包管理器)vue-cli 脚手架构建工具cnpm npm的淘宝镜像 安装node.js 从node.js官网下载并安装node,安装过程很简单,一路"下一步"就可以了(傻瓜式安装).安装完成之后,打开命令行工具,输入 node -v,如下图,如果出现相应的版本号,则说明安装成功. npm包管理器,是集成在node中的,所以,直接输入 npm -v就会如下图所示,显示出npm的版本信息. OK!node环境已经安装完成,npm包管理器也有了.

[转] 关于 Eclipse 导出 Android项目 JavaDoc 详细过程

关于Eclipse 导出JavaDoc过程中,遇到的问题 ,google 了一下 ,网友们 总说不一 ,最终 还是 搞定了 现在分享给大家 希望对大家有所帮助 用Eclipse默认的 JavaDoc需要注意 有两个问题   1.   找不到关于Android相关的类   2. 不支持中文/乱码 , 后者是编码问题  编码 GBK 的不可映射字符   选中项目右键 --->Export--- 如图 点击 下一步 只需要 选择src 目录 点击 Next下一步 这儿 注意 两个问题 一个 是 编码问

Android的学习之路(三)项目的启动过程和安装过程详解

应用的安装和启动过程: 安装:第一步:java的编译器会把这个.java文件编译成.class文件 第二部:Android的SDK提供了一个dx工具,这个工具把.class文件转义成.dex文件 第三部:打包操作,把.dex文件和资源文件进行打包,打包成一个压缩文件,然后进行签名.最后就打包成为了.apk文件 第四部:调用adb指令:adb install c:/x.apk安装到模拟器 具体过程:.JAVA---->.class--.dx-->.dex--->打包签名--->.ap

第二章:2.6 使用 runserver 命令把项目运行起来

1. 使用命令 runserver 将 项目运行起来. 命令如下:python manage.py runserver   , 首先要进入到 guest  项目中,然后才可以 启动项目 2. 打开浏览器访问: 127.0.0.1 : 8000 或者是 localhost:8000

Java程序编译和运行的过程【转】

转自:http://www.360doc.com/content/14/0218/23/9440338_353675002.shtml Java整个编译以及运行的过程相当繁琐,本文通过一个简单的程序来简单的说明整个流程. 如下图,Java程序从源文件创建到程序运行要经过两大步骤:1.源文件由编译器编译成字节码(ByteCode)  2.字节码由java虚拟机解释运行.因为java程序既要编译同时也要经过JVM的解释运行,所以说Java被称为半解释语言( "semi-interpreted&quo

android菜鸟学习笔记16----Android项目打包安装过程(Run as Android Application)

右击项目名称,Run as Android Appication之后,Android项目打包安装过程: 1.打包生成.apk文件: 1)把源码中的.java文件编译生成.class文件 2)将所有的.class文件通过dex.bat生成为classes.dex文件 3)生成资源索引表文件 resources.ap_ 4)将项目的配置文件Manifest.xml转换为二进制文件 5)使用debug.keystore对整个项目进行打包签名,如果有配置ANDROID_SDK_HOME这个环境变量来存放

Java程序编译和运行的过程

Java整个编译以及运行的过程相当繁琐,本文通过一个简单的程序来简单的说明整个流程. 如下图,Java程序从源文件创建到程序运行要经过两大步骤:1.源文件由编译器编译成字节码(ByteCode)  2.字节码由java虚拟机解释运行.因为java程序既要编译同时也要经过JVM的解释运行,所以说Java被称为半解释语言( "semi- interpreted" language). 图1   java程序编译运行过程 下面通过以下这个java程序,来说明java程序从编译到最后运行的整个