本系列学习教程使用的是cocos2d-x-2.1.4(最新版为3.0alpha0-pre) ,PC开发环境Windows7,C++开发环境VS2010
一、贴图地图类CCTileMapAtlas
除了利用CCTMXTiledMap类创建地图对象外,还有一种创建地图的方法,就是使用贴图地图类
CCTileMapAtlas。CCTileMapAtlas类的继承关系如下图所示。
CCTileMapAtlas类的常用函数见下图所示。
二、项目实例
1、首先新建Cocos2D-X项目,取名为“MyCCTileMapAtlas”,然后在HelloWorldScene.cpp文件的init函数中添加如下代码。
bool HelloWorld::init() { bool bRet = false; do { CC_BREAK_IF(! CCLayer::init()); CCTileMapAtlas* map = CCTileMapAtlas::create("tiles.png", "levelmap.tga", 16, 16); // Convert it to "alias" (GL_LINEAR filtering) map->getTexture()->setAntiAliasTexParameters(); // If you are not going to use the Map, you can free it now // NEW since v0.7 map->releaseMap(); addChild(map, 0, 1); map->setAnchorPoint( ccp(0, 0.5f) ); CCScaleBy *scale = CCScaleBy::create(4, 0.8f); CCActionInterval *scaleBack = scale->reverse(); CCSequence* seq = CCSequence::create(scale, scaleBack, NULL); map->runAction(CCRepeatForever::create(seq)); bRet = true; } while (0); return bRet; }
定义 CCTileMapAtlas需要两个参数,第一个参数是类似于之前使用的地图图素集的图片路径,第二个参数是TGR
图片的路径。TGR类似于地图图素排列的数据,也可以由相应的编辑器编辑。但是,现在使用Tiled编辑器更加方便,
而且贴图地图类的功能也比Tiled编辑器的少,所以目前这种方法不被推荐使用,这里我们只要理解这种方法就可以
了。
2、实例效果图