Joseph_Zhang 2014-07-31 11:10 采纳率: 0%
浏览 2171

在tiledmappacker工具中调用libgdx的Gdx类的静态对象为null的问题

1、问题由来
最近在学习libgdx(使用libgdx0.9.9),使用地图打包工具tiledmappacker.jar时报错。
实在没有办法,找到网上的一位兄台发的一篇贴子(链接如下)

libgdx的tmx地图处理工具gdx-tiled-preprocessor.jar(TiledMapPacker)修正版  http://www.cnblogs.com/SkyD/archive/2012/04/19/2457237.html

试着自己生成tiledmappacker.jar,但是运行还是有相同的错误,开始以为版本问题,不过看了代码后发现不是。最后实在没招了,把gdx-source.jar包解开,试着修改,但是最后还是没有解决问题。

2、问题现象

Gdx.gl.glGenTextures(1, buffer2);

  在执行上面这句代码时, Gdx.gl对象为null,检查Gdx的其他成员变量graphics,audio等, 也全部为null。可是Gdx类并没有改动过,一直是按libgdx的原来代码。后来我直接在main函数中调用Gdx的静态对象,也是同样问题。具体出现的异常如下:

Thread [main] (Suspended (exception NullPointerException))  
Texture.createGLHandle() line: 166  
Texture.create(TextureData) line: 158   
Texture.<init>(FileHandle, Pixmap$Format, boolean) line: 133    
Texture.<init>(FileHandle, boolean) line: 126   
TmxMapLoader.load(String, TmxMapLoader$Parameters) line: 109    
TmxMapLoader.load(String) line: 91  
TiledMapPacker.processMaps(File, File, TexturePacker2$Settings) line: 155   
Main.main(String[]) line: 37    

(说明一下,gdx.jar,gdx-natives.jar.....等相关包已经正常添加并引用了,当然,最后gdx.jar已经删除换成代码了。)  
  
3、附libgdx中的Gdx.java

package com.badlogic.gdx;

import com.badlogic.gdx.graphics.GL10;
import com.badlogic.gdx.graphics.GL11;
import com.badlogic.gdx.graphics.GL20;
import com.badlogic.gdx.graphics.GLCommon;

public class Gdx {
public static Application app;
public static Graphics graphics;
public static Audio audio;
public static Input input;
public static Files files;
public static Net net;

public static GLCommon gl;
public static GL10 gl10;
public static GL11 gl11;
public static GL20 gl20;

}

最后,请大家帮忙看看是什么原因引起的,在此先谢谢大家!

  • 写回答

1条回答

  • sinat_26351349 2015-03-05 20:09
    关注

    新版的libgdx不用将地图打包了,直接使用即可。

    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!