Fast TileMap
概述在游戏中常常会有丰富的背景元素,如果直接使用大的背景图实现,这会造成资源浪费。TileMap就是为了解决这问题而产生的。Cocos2d-x支持使用Tile地图编辑器创建的TMX格式的地图。 Cocos2d-x为我们提供了TMXTileMap和TMXLayer两个类来处理瓦片地图。通过使用TMXTileMap和TMXLayer,我们可以很方便的加载TMX格式的地图文件,获取地图上的图层、对象、属性等信息。 新发布的3.2版本,对瓦片地图进行了大幅改进,通过自动裁剪不在视图范围内的瓦片来提升性能,并支持渲染更大尺寸的瓦片地图!我们称之为"Fast TileMap",下面我们就来一起研究Fast TileMap。 TileMap VS Fast TileMapFast TileMap的不同 在3.2版本,新增了 在cocos2d::experimental的名字空间下重新实现了TMXTiledMap和TMXLayer。其中对TMXLayer的改动较大。
class CC_DLL TMXLayer : public SpriteBatchNode
class CC_DLL TMXLayer : public Node 新的 Fast TileMap的用法auto map = cocos2d::experimental::TMXTiledMap::create("tilemap.tmx"); addChild(map,kTagTileMap); 上面代码演示了,使用Fast TileMap加载tilemap.tmx文件创建一幅地图,并加到场景中。 更多API使用方法参考:
性能对比我们分别使用以前的TileMap和Fast TileMap加载同一个tmx文件创建地图,并在同一设备上进行测试。 测试设备:
因为相同的GL calls(渲染次数)下,GL verts(显卡绘制的顶点数)越少,绘制效率越高。FPS(帧率)越高游戏越流畅。所以使用Fast TileMap渲染地图的性能更优。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |