Libgdx专题系列:地图篇 斜45°地图

声明:

本系列文章使用的Libgdx版本均为0.99版本

Libgdx游戏开发交流群 323876830

 

前面我们使用的都是矩形的图块, 然而在实际的使用中,经常会用到菱形的图块来进行地图绘制。

 

这里Libgdx也给我们提供了斜视角的地图绘制 IsometricTiledMapRenderer

用法和OrthogonalTiledMapRenderer一样。

 

加载我们的地图文件

TiledMap map = new TmxMapLoader().load("isometric_grass_and_water.tmx");


使用IsometricTiledMapRenderer来进行绘制地图

mMapRenderer = new IsometricTiledMapRenderer(map);


绘制还是一样

mMapRenderer.render();


 

这里我们来说说怎么对斜45°地图进行移动和放缩,因为好多这种视角的游戏都会有这种需求,例如

塔防游戏等等。

 

Libgdx提供了GestureListener这个接口,里面提供了手势的所有操作方法

按下、轻敲、长按、滑动、移动、放缩(两只手操作)等监听

 

这里我们实现这个接口

修改移动方法

    public boolean pan(float x, float y, float deltaX, float deltaY)
    {
        mCamera.position.add(-deltaX, deltaY, 0);
        return false;
    }

更改镜头的坐标

 

修改放缩方法

    public boolean zoom(float initialDistance, float distance)
    {
        mCamera.zoom = initialDistance/distance;
        return false;
    }

更改镜头的放缩

 

注意在使用手势的时候要设置一下

Gdx.input.setInputProcessor(new GestureDetector(this));

可以把它理解为注册监听,可以接收到所有的触摸和按键事件,他会在每一帧绘制之前,来调用。

 

游戏截图

 

项目工程下载

 

转载请链接原文地址 http://blog.csdn.net/wu928320442/article/details/17259911

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值