cocos2d-x教程1 hello world
HelloworldScene.h
#ifndef __HELLOWORLD_SCENE_H__
#define __HELLOWORLD_SCENE_H__
#include "cocos2d.h"
class HelloWorld :public cocos2d::CCLayer
{
public:
//初始化函数
virtual bool init();
//静态创建函数
static cocos2d::CCScene* scene();
//menu菜单的一个回调函数
void menuCloseCallback(CCObject* pSender);
//备注1
CREATE_FUNC(HelloWorld);
};
#endif // __HELLOWORLD_SCENE_H__
HelloWorldScene.cpp
#include "HelloWorldScene.h"
#include "SimpleAudioEngine.h"
usingnamespace cocos2d;
usingnamespace CocosDenshion;
CCScene* HelloWorld::scene()
{
//创建一个场景对象
CCScene *scene = CCScene::create();
//创建一个HelloWorld对象(Layer层)
HelloWorld *layer =HelloWorld::create();
//将层作为场景的孩子放入场景中
scene->addChild(layer);
return scene;
}
// on "init" you need to initialize your instance
boolHelloWorld::init()
{
//先调用父类初始化函数
if ( !CCLayer::init() )
{
return false;
}
//将一个“X”形状的图片创建成一个图片菜单项,
//并将用户点击后的回调函数绑定在menuCloseCallback函数上
CCMenuItemImage *pCloseItem =CCMenuItemImage::create(
"CloseNormal.png",
"CloseSelected.png",
this,
menu_selector(HelloWorld::menuCloseCallback) );
//设置菜单项的位置
pCloseItem->, ) );
//将已经创建好的菜单项加入菜单中,生成一个菜单Menu对象实例
CCMenu* pMenu = CCMenu::create(pCloseItem,NULL);
//设置菜单作为 CCPointZero:x=0,y=0
pMenu->setPosition(CCPointZero );
//将菜单加入当前Layer中,并且设置z轴为1
);
//创建一个文本对象
);
//获取当前设备尺寸,
CCSize size =CCDirector::sharedDirector()->getWinSize();
//设置文本坐标
pLabel->, size.) );
//将文本添加到当前Layer中
);
//利用 HelloWorld.png图片创建一个精灵
CCSprite* pSprite = CCSprite::create("HelloWorld.png");
//设置精灵位置
pSprite->, size.) );
//将精灵放置当前layer中
);
return true;
}
voidHelloWorld::menuCloseCallback(CCObject* pSender)
{
//程序退出
CCDirector::sharedDirector()->end();
//判定当前设备是否为ios设备
#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS)
);
#endif
}
cocos2d-x教程1 hello world的更多相关文章
- 【Cocos2d入门教程六】Cocos2d-x事件篇之触摸
Cocos游戏当中产生一个事件时,可以有多个对象在监听该事件,所以有优先级(Priority).优先级越高(Priority值越小),事件响应越靠前. 关系图: 新 事件分发机制:在2.x 版本事件处 ...
- 【Cocos2d入门教程四】Cocos2d-x菜单篇
游戏世界多姿多彩,无论多靓丽的游戏,多耐玩的游戏,在与游戏用户交互上的往往是菜单. 上一章我们已经大概了解了导演.节点.层.精灵.这一章以菜单为主题. 菜单(Menu)包含以下内容: 1.精灵菜单项( ...
- 【Cocos2d入门教程三】HelloWorld之一目了然
什么程序都是从HelloWorld先开始.同样Cocos2d-x我们先从HelloWorld进行下手.下面是HelloWorld的运行完成图: 建立好的Cocos游戏项目中会有两个比较常用接触的文件夹 ...
- 【Cocos2d入门教程八】浅析Cocoss2d下的音频引擎及封装音频类
Cocos2d-x提供了一个音频CocosDenshion引擎,CocosDenshion引擎可以独立于Cocos2d-x单独使用,CocosDenshion引擎本质上封装了OpenAL音频处理库.具 ...
- 【Cocos2d入门教程七】三分钟看懂Cocos2d坐标系
无论是搞2d还是3d开发,最需要搞清楚的就是坐标系,这部分混乱的话就没啥搞头了.所以玩cocos2d,一上来就需要先把各种与坐标有关的东西搞清楚. 1.OpenGL坐标系 Cocos2d-x使用的是O ...
- 【Cocos2d入门教程二】Cocos2d-x基础篇
上一章已经学习了环境的搭建.这一章对基础概念进行掌握.内容大概有: 1.导演 2.场景 3.节点 4.层 4.精灵 1.导演(Director) 导演存在的主要作用: a.环境设定(帧率 初始化ope ...
- 【Cocos2d入门教程五】Cocos2d-x动作篇
动作类(Action)是所有动作的基类,它创建的一个对象代表一个动作.动作作用于Node,包括继承于之下的Layer.Sprite.因此每个动作 都需要由Node对象或者其继承者执行.动作类(Acti ...
- iPhone开发与cocos2d 经验谈
转CSDN jilongliang : 首先,对于一个完全没有mac开发经验,甚至从没摸过苹果系统的开发人员来说,首先就是要熟悉apple的那一套开发框架(含开发环境IDE.开发框架uikit,还有开 ...
- 在cocos2d里面如何使用Texture Packer和像素格式来优化spritesheet
免责申明(必读!):本博客提供的所有教程的翻译原稿均来自于互联网,仅供学习交流之用,切勿进行商业传播.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作 ...
- ios游戏开发 Sprite Kit教程:初学者 1
注:本文译自Sprite Kit Tutorial for Beginners 目录 Sprite Kit的优点和缺点 Sprite Kit vs Cocos2D-iPhone vs Cocos2D- ...
随机推荐
- javascript数组顺序-----1冒泡的另一种比较好理解的写法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- saiku之固定维度(必选维度)
工作中遇到的问题,记录下来方便以后查找. 在saiku中如何设定固定维度? 找到WorkspaceDropZone.js文件,在synchronize_query: function(){}方法中的“ ...
- Pig Latin儿童黑话(java)
●假设单词以辅音字母開始,将词首的辅音字母字符串(第一个元音字母前的全部字母)从单词的开头移动到末尾,然后加上后缀ay,这样就形成了它的pig latin. ●假设单词以元音字母開始,仅仅须要 ...
- HDOJ 1495 非常可乐 【BFS】
非常可乐 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- Struts2.x教程(一) Struts2介绍
一.Struts2是什么 Struts2是在WebWork2基础发展而来的.和Struts1一样, Struts2也是基于MVC的web层框架. 那么既然有了Struts1,为何还要Struts2? ...
- MFC知识点整理
1. 在使用VS2010生成基于MFC的应用程序时,在“Visual C++”下选择“MFC”,对话框中间区域会出现三个选项:MFC ActiveX Control.MFC Application和M ...
- 利用Telnet来模拟Http请求 有GET和POST两种
利用Telnet来模拟Http请求---访问百度. 1.打开"运行"->cmd进入命令环境: 2.输入"telnet www.baidu.c ...
- Oracle 客户端配置笔记
1.右击桌面的我的电脑 -> 高级 -> 环境变量,新建 1) 变量名:ORACLE_HOME 变量值:D:\app\instantclient_11_2 2) 变量名:TNS_ADMIN ...
- 创建XML文件
//创建XML文件 XmlDocument xmldoc = new XmlDocument(); XmlText xmltext; ...
- linux杂记(六)档案权限
[KANO@kelvin ~]$ ls -al 总用量 drwx------. KANO KANO 10月 : . drwxr-xr-x. root root 9月 : .. drwxrwxr-x. ...