• libgdx引擎android游戏开发(二)TiledMap初步


    接下来我觉得基础不够,就又找到了这个资料

    http://www.cnblogs.com/htynkn/tag/libgdx/

    学习到(十二)--TiledMap地图的使用遇到了一堆问题,难过了好几天,呵呵

    1. 处理tmx文件

    资料中说到:用工具Tile Map editor制作出tmx文件后用gdx-tiled-preprocessor处理一下。处理完成后会多三个文件,覆盖原来的同名文件即可。

    短短的一句话,我弄到了晚上1点半,总算解决了

    1)制作完tmx文件后,查看下使用的图片路径,不能是绝对路径:

        以文本格式打开tmx文件,找到 source="tmw-desert-spacing.png"  如果是绝对路径,把前面的路径去掉

       怎么产生的绝对路径,我还不太清楚,不过当时确实是绝对路径。。后来几天,我新生成的tmx文件,竟然都是相对路径~~~

    2)用gdx-tiled-preprocessor处理tmx文件

       我用的libgdx是最新的0.9.7,其中有gdx-tiled-preprocessor.jar文件,按照网上说的,

       新建一个文件夹(TiledMap任意名均可),把jar文件放进去,然后新建两个子文件夹:in和out ,把tmx文件和使用的图片文件放入in

       在TiledMap文件下 执行命令 java -jar gdx-tiled-preprocessor.jar in out

       接下里就是一堆问题了,我一顿改,不行~~~~当时哭的心都有了

       最后,我解决的方法是,在TiledMap文件下放入gdx.jar,gdx-tools.jar和gdx-tiled-preprocessor.jar三个jar

       执行命令 java -classpath gdx.jar;gdx-tools.jar;gdx-tiled-preprocessor.jar com.badlogic.gdx.tiledmappacker.TiledMapPacker in out

       另,我解决的过程中安装了最新版本的jdk(7.0),不知道是不是必须的,如果上述方法仍搞不定的朋友可以试一下啊.

       呼~,,终于解决了,可以睡觉了

    2.报错:com.badlogic.gdx.utils.GdxRuntimeException: Error reading file: map/tmw-desert-spacing packfile (Absolute)

       解决方法:

       atlas = new TileAtlas(map, new FileHandle("data/map/")); 改成

       atlas = new TileAtlas(map, Gdx.files.internal("data/map/"));就OK了

    3.报错:java.lang.IllegalArgumentException: Bad position (limit 0): 8

              是代码tileMapRenderer.render(c); (c为从舞台获得的照相机变量)报的错

      这个问题困扰了我几晚,网上也没找到答案............

      最后,无意中发现,竟然是图片制作有问题,我用Tiled Map Editor打开制作好的tmx文件时打不开,,才知道的...耽误了我好几天啊......郁闷

    4.问题解决完了,终于可以运行了.....

    OK,今天就到这里了

  • 相关阅读:
    css 基线与行高
    requests超时
    小记--------Ambari2.7.4集成Kylin3.0
    记一次--------HDP3.1 spark创建表hive读不到,hive创建表spark读不到
    记一次-------- sqoop同步mysql到hive 执行太慢
    记一次--------hive创建表comment中文乱码解决
    .Net Core学习之路-跳坑(一)
    NGINX、HAProxy和Traefik负载均衡能力对比
    idea 一键启动多个微服务项目
    vuedraggable自由拖拽
  • 原文地址:https://www.cnblogs.com/first001/p/2829220.html
Copyright © 2020-2023  润新知