Cocos2d-X精灵教程:第一部分
2012-05-18 23:18
302 查看
著作权声明:本文的Cocos2d版本 由子龙山人 翻译,欢迎转载分享。请尊重作者劳动,转载时保留该声明和作者博客链接,谢谢!首发于泰然论坛
我们今天将学习哪些内容呢?我们将学习有关 “CCSprite”, “CCSpriteSheets”,“CCSpriteFrame”,以及“Texture2d”和“CCTextureCache”的一切!在这篇教程的最后,我们将有一条龙在一个简单的背景地形上面飞,路径由用户的手指滑动touch决定。很酷呢?
因此,在这个教程中,我们还是学习一些基础知识--不过没有菜单啦,我们主要关心的是精灵(sprite)。先看一看整个教程最后的产品是什么样子吧!如下图所示:
是否有点激动了呢?我敢打赌你现在很激动。。。不管怎么说,直接切入主题吧。。。
首先,我们使用上个教程的
SceneManager.h/.cpp,这里我们只创建“PlayLayer”类。
我们首先要做的就是把“dragon.png”图片拖到 Resources文件夹下去,它是一张750×560的图片,我把它缩小显示在下图。你可以从这里下载完整大小的图片资源
下载图片
那里面还有一张地形背景图,它的大小为480×320,我也把它缩小显示出来了:
像之前的菜单教程一样,把这里图片添加进resources分组下面去
我们的工程将包含两个类(delegate 类除外): SceneManager和
PlayLayer。我们已经知道SceneManger
是如何工作的了,这里就不再啰嗦了。(可以参考《cocos2d 菜单教程:第一部分》),但是,下面是我移除掉一些菜单选项后的SceneManager
类。
SceneManager.h
SceneManager.cpp
一定要记得,把 AppDelegate类里面的
CCDirector replaceScene调用,改成
“SceneManager::goPlay();”调用
接下来,我们开始修改 PlayLayer.h中的内容
我们今天将学习哪些内容呢?我们将学习有关 “CCSprite”, “CCSpriteSheets”,“CCSpriteFrame”,以及“Texture2d”和“CCTextureCache”的一切!在这篇教程的最后,我们将有一条龙在一个简单的背景地形上面飞,路径由用户的手指滑动touch决定。很酷呢?
因此,在这个教程中,我们还是学习一些基础知识--不过没有菜单啦,我们主要关心的是精灵(sprite)。先看一看整个教程最后的产品是什么样子吧!如下图所示:
是否有点激动了呢?我敢打赌你现在很激动。。。不管怎么说,直接切入主题吧。。。
首先,我们使用上个教程的
SceneManager.h/.cpp,这里我们只创建“PlayLayer”类。
我们首先要做的就是把“dragon.png”图片拖到 Resources文件夹下去,它是一张750×560的图片,我把它缩小显示在下图。你可以从这里下载完整大小的图片资源
下载图片
那里面还有一张地形背景图,它的大小为480×320,我也把它缩小显示出来了:
像之前的菜单教程一样,把这里图片添加进resources分组下面去
我们的工程将包含两个类(delegate 类除外): SceneManager和
PlayLayer。我们已经知道SceneManger
是如何工作的了,这里就不再啰嗦了。(可以参考《cocos2d 菜单教程:第一部分》),但是,下面是我移除掉一些菜单选项后的SceneManager
类。
SceneManager.h
#ifndef sprite_Test_SceneManager_h #define sprite_Test_SceneManager_h #include "PlayLayer.h" #include "cocos2d.h" using namespace cocos2d; class SceneManager : public CCLayer { public: static void goPlay(); static CCScene* wrap(CCLayer* layer); static void go(CCLayer* layer); }; #endif
SceneManager.cpp
#include "cocos2d.h" #include "SceneManager.h" #include "PlayLayer.h" void SceneManager::goPlay() { CCLayer* layer=PlayLayer::node(); SceneManager::go(layer); } void SceneManager::go(CCLayer* layer) { CCDirector* director=CCDirector::sharedDirector(); CCScene* newScene=SceneManager::wrap(layer); if(!director->init()) { director->replaceScene(newScene); } { director->runWithScene(newScene); } } CCScene* SceneManager::wrap(CCLayer* layer) { CCScene* newScene=CCScene::node(); newScene->addChild(layer); return newScene; }
一定要记得,把 AppDelegate类里面的
CCDirector replaceScene调用,改成
“SceneManager::goPlay();”调用
接下来,我们开始修改 PlayLayer.h中的内容
相关文章推荐
- (译)cocos2d精灵教程:第一部分
- (译)cocos2d精灵教程:第一部分
- Cocos2d-x 精灵教程:第一部分
- (译)cocos2d菜单教程:第一部分
- (译)如何使用cocos2d来做一个简单的iphone游戏教程(第一部分)
- 2-2.1-(译)如何使用cocos2d来做一个简单的iphone游戏教程(第一部分)
- Cocos2D入门教程3 精灵的应用
- (译)如何使用cocos2d制作基于tile地图的游戏教程:第一部分
- (译)如何使用cocos2d来做一个简单的iphone游戏教程(第一部分)
- (译)如何使用cocos2d制作基于tile地图的游戏教程:第一部分
- (译)如何使用cocos2d制作基于tile地图的游戏教程:第一部分
- 深入分析Cocos2d-x 2.0中的“纹理”和精灵-沈大海cocos2d-x教程20
- 深入分析Cocos2d-x 2.0中的“纹理”和精灵-沈大海cocos2d-x教程20
- (译)如何使用cocos2d来做一个简单的iphone游戏教程(第一部分)
- 10. 如何使用cocos2d制作基于tile地图的游戏教程:第一部分
- cocos2d精灵教程(三篇)
- Cocos2d-x 3.9教程:4.精灵的创建和基本操作
- 深入分析Cocos2d-x 2.0中的“纹理”和精灵-沈大海cocos2d-x教程20
- (译)cocos2d菜单教程:第一部分
- (译)如何使用cocos2d制作基于tile地图的游戏教程:第一部分