【Cocos2d-X开发学习笔记】第27期:游戏背景之贴图地图类(CCTileMapAtlas)的使用

本系列学习教程使用的是cocos2d-x-2.1.4(最新版为3.0alpha0-pre) ,PC开发环境Windows7,C++开发环境VS2010



一、贴图地图类CCTileMapAtlas


       除了利用CCTMXTiledMap类创建地图对象外,还有一种创建地图的方法,就是使用贴图地图类

CCTileMapAtlas。CCTileMapAtlas类的继承关系如下图所示。

【Cocos2d-X开发学习笔记】第27期:游戏背景之贴图地图类(CCTileMapAtlas)的使用_第1张图片


CCTileMapAtlas类的常用函数见下图所示。

【Cocos2d-X开发学习笔记】第27期:游戏背景之贴图地图类(CCTileMapAtlas)的使用_第2张图片



二、项目实例


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、实例效果图


【Cocos2d-X开发学习笔记】第27期:游戏背景之贴图地图类(CCTileMapAtlas)的使用_第3张图片

 


 


源码下载地址

 

你可能感兴趣的:(cocos2d-x)