先对TiledMap,CCTMXTiledMap,CCTMXLayer,CCTMXObjectGroup做一下简单介绍。
TiledMap地图,是游戏开发中常用的地图,称之为砖块地图(瓷砖地图,瓦片地图),格式为tmx。官网:http://www.mapeditor.org/
CCTMXTiledMap,cocos2dx的地图类,通过加载tmx文件直接得到。
CCTMXLayer,cocos2dx中的图层类,代表了砖块地图中的图层。
CCTMXObjectGroup,cocos2dx中定义的对象层类,代表了砖块地图中的对象层,可以进行属性定义,如定义一个游戏中的精灵,就可以使用该对象。
以下是使用步骤:
1.将地图加载进来,并添加到当前CCLayer
CCTMXTiledMap *map = CCTMXTiledMap::create("orthogonal-test-vertexz.tmx");
addChild(map, 0, 1);
2.通过砖块地图获取Sprite
其实砖块地图中的每一个块都可以看做一个sprite,每一个砖块都具有Sprite的所有属性,如翻转、位移等。
首先获取地图中的图层:
CCTMXLayer* layer = map->layerNamed("trees");
然后获取图层中的某个块作为精灵: