首页 > 代码库 > 【开源java游戏框架libgdx专题】-13-开发工具-地图的使用
【开源java游戏框架libgdx专题】-13-开发工具-地图的使用
支持libGDX的地图编辑器有很多种,其中比较常用的工具为Tiled地图工具。Tiled是一款非常好用的地图编辑器。下载地址:http://www.mapeditor.org
TiledMap类:
又称瓦片地图类,主要用于解析地图编辑器所保存的地图文件。
常用方法:
dispose():销毁当前地图中的所有纹理
getLayers():获取当前地图中的所有图层,返回值为MapLayers类型变量
getProperties():获取当前地图的所有属性,返回值为MapProperties类型变量
getTileSets():获取地图瓦片集,返回值为TileDMapTileSets类型变量
OrthogonalTiledMapRenderer类:
地图渲染器,主要负责地图的渲染工作
常用方法:
beginRender():开始绘制
dispose():销毁所有资源对象
endRender():结束绘制,该方法在所有图层绘制之后执行
getMap():获取当前TiledMap对象
getSpriteBatch():获取当前地图的精灵画笔
getUnitScale():获取绘制缩放比例
render():绘制地图
render(int[] layers):绘制地图的制定图层
setMap(TiledMap map):设置绘制的地图
setView(Matrix4 projection,float x,float y,float width,float height):设置视距
setView(OrthographicCamera camera):设置绘制相机
renderTileLayer(TiledMapTileLayer layer):绘制指定图层
代码实例:
1 package com.mygdx.usemap; 2 3 import com.badlogic.gdx.ApplicationAdapter; 4 import com.badlogic.gdx.Gdx; 5 import com.badlogic.gdx.graphics.GL20; 6 import com.badlogic.gdx.graphics.OrthographicCamera; 7 import com.badlogic.gdx.maps.tiled.TiledMap; 8 import com.badlogic.gdx.maps.tiled.TmxMapLoader; 9 import com.badlogic.gdx.maps.tiled.renderers.OrthoCachedTiledMapRenderer;10 /**11 * 使用地图12 * @author Jack(乐智)13 * @blog dtblog.cn14 * @qq 98413718315 */16 public class MainGame extends ApplicationAdapter {17 18 //声明地图加载器19 private TiledMap map;20 //声明地图渲染器21 private OrthoCachedTiledMapRenderer renderer;22 //声明相机23 private OrthographicCamera camera;24 25 @Override26 public void create() {27 //加载地图28 map=new TmxMapLoader().load("test2.tmx");29 //实例化地图渲染器30 renderer=new OrthoCachedTiledMapRenderer(map);31 //实例化相机32 camera=new OrthographicCamera();33 //设置相机视距34 camera.setToOrtho(false, 576, 552);35 }36 37 @Override38 public void render() {39 //设置屏幕背景色为黑色40 Gdx.gl.glClearColor(1, 1, 1, 1);41 //清屏42 Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);43 //更新相机状态44 camera.update();45 //渲染地图比例46 renderer.setView(camera);47 //渲染地图48 renderer.render();49 }50 51 }
地图配置文件:
1 <?xml version="1.0" encoding="UTF-8"?> 2 <map version="1.0" orientation="orthogonal" renderorder="right-down" width="24" height="24" tilewidth="24" tileheight="23" nextobjectid="1"> 3 <tileset firstgid="1" name="test" tilewidth="24" tileheight="23" tilecount="8" columns="8"> 4 <image source="ground248.png" width="192" height="24"/> 5 </tileset> 6 <tileset firstgid="9" name="2" tilewidth="24" tileheight="23" tilecount="8" columns="8"> 7 <image source="ground288.png" width="192" height="24"/> 8 </tileset> 9 <layer name="块层 1" width="24" height="24">10 <data encoding="base64" compression="zlib">11 eJxjZGBgYBzhmJ0EtcxAzEJDt7ACMdsgCJNRPHCYlmkMlNZhaYyUdE+OPfQIKyYamsuEZD4TkXbB4o5QHDLhwMTGHb5ygljzBmO4D3U8EuoHeuVtemAALkgCuw==12 </data>13 </layer>14 </map>
地图资源文件:
效果:
原文由博主 乐智 编辑撰写,版权归博主所有。
原文地址 http://www.dtblog.cn/1160.html 转载请注明出处!
【开源java游戏框架libgdx专题】-13-开发工具-地图的使用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。