libgdx学习之TiledMap(一)

阅读更多

       libgdx自0.9.8版本开始对tile map的读取重新进行了实现,原来com.badlogic.gdx.graphics.g2d.tiled包下的类不在使用,新的map包位于com.badlogic.gdx.maps,增强了libgdx在地图方面的扩展性、灵活性。前后两种tile map的加载方式也有所区别。0.9.8之前的tiledmap加载方法请见博文:http://www.cnblogs.com/htynkn/archive/2012/01/13/libgdx_14.html

一、map类结构关系

代码见这里


libgdx学习之TiledMap(一)_第1张图片

可以继承map、maprenderer等实现自己的地图结构

 

二、tmx文件结构


 
  
  
   
    
   
  
  
   
    
   
  
  
   
    
    
    
   
  
  
   
    
    
    
   
  
 
 
  
 
 
  
   eJxd0NsKwkAMRdEB672KivggImpVBK2XVlv//8vcgRMIPiySyXQS0nVKKZcRtliF81C5xTE26KIO7ugpf2OPo3KrfdDHK3xT4qLcFBiEnoXe1Hq3Q4aTzuaBKyppQo8DZpj8zXaVYhPm2B4LTMOO3tvmn8M+fv/Uf8rDPr7jTTWfs0SLLzqKbahl4ndz/AA4bQ5u
  
 
 
  
   eJxjYCAdWJKo3ooCPbZEqrej0B5S9dALAACEqgK7
  
 
 
 
  
  
   
  
  
   
  
  
   
  
  
   
  
  
 


    tileset是Tile编辑器中的图块,一个图块是一个tileset,当地图中使用到一个tile时,会将该tile的数据加入到tileset中,每一个tile有一个id,多个图块的tile id是递增的。

    layer是Tile编辑器中的图层,一个地图有多个图层,一个图层是一个layer,图层中存放tile数据,并使用了编码和压缩格式,encoding,compression属性;

    objectgroup是Tile编辑器中的对象,一个objectgroup可以多个object,object有多种类型:polyline、ellipse、polygon等等,它们有不同的属性。

     

三、TiledMap类结构

com.badlogic.gdx.maps.tiled 包下类结构


libgdx学习之TiledMap(一)_第2张图片
 

TiledMap:继承Map类,表示整个tiledmap对象;

TiledMapTileSet:对应tmx文件中的图块,一个图块为一个TiledMapTileSet;

TiledMapTile:对应图块中的一个块,多个TileMapTile组成一个TiledMapTileSet;

TiledMapTileLayer:继承MayLayer类 对应tmx文件中的一个图层;

TiledMapTileSets:一个map中用到的所有TiledMapTileSet;

 

下面准备写一下TmxMapLoader和TiledMapRenderer

 

参考资料:https://code.google.com/p/libgdx/wiki/GraphicsTileMaps

      

 

 

  • libgdx学习之TiledMap(一)_第3张图片
  • 大小: 27.6 KB
  • libgdx学习之TiledMap(一)_第4张图片
  • 大小: 15.7 KB
  • 查看图片附件

你可能感兴趣的:(libgdx,android,game,mobile,tiledmap)