我正在尝试在Eclipse libGDX中制作基本游戏。我有渲染精灵的问题。我做的一切都很像,但我仍然得到这个错误:
LwjglGraphics:创建了OpenGL 3.2+核心配置文件(GLES 3.0)上下文。 这是实验性的!线程“LWJGL应用程序”中的异常 com.badlogic.gdx.utils.GdxRuntimeException:无法加载文件:BG.png 在com.badlogic.gdx.graphics.Pixmap。(Pixmap.java:148)at com.badlogic.gdx.graphics.TextureData $ Factory.loadFromFile(TextureData.java:98) 在com.badlogic.gdx.graphics.Texture。(Texture.java:100)at com.badlogic.gdx.graphics.Texture。(Texture.java:92)at com.zebrabandit.egghead.Assets.Load(Assets.java:13)at com.zebrabandit.egghead.GameScreen。(GameScreen.java:24)at com.zebrabandit.egghead.EggHead.create(EggHead.java:10)at at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:147) 在 com.badlogic.gdx.backends.lwjgl.LwjglApplication $ 1.run(LwjglApplication.java:124) 引起:com.badlogic.gdx.utils.GdxRuntimeException:找不到文件: BG.png(内部)at com.badlogic.gdx.files.FileHandle.read(FileHandle.java:136)at com.badlogic.gdx.files.FileHandle.readBytes(FileHandle.java:222)at at com.badlogic.gdx.graphics.Pixmap。(Pixmap.java:145)... 8更多
这是我的代码:
public static Texture backgroundT;
public static Sprite backgroundS;
...
backgroundT = new Texture(Gdx.files.internal("BG.png"));
backgroundT.setFilter(TextureFilter.Linear, TextureFilter.Linear);
backgroundS = new Sprite(backgroundT);
backgroundS.flip(false, true);
...
@Override
public void render(float delta) {
Gdx.gl.glClearColor(1F, 1F, 1F, 1F);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
camera.update();
batch.setProjectionMatrix(camera.combined);
batch.begin();
//rendering code :D
batch.draw(Assets.backgroundS, 0, 0);
batch.end();
}
答案 0 :(得分:0)
我假设您已使用安装应用程序工具初始化了项目 (GDX-setup.jar)。
然后您可能遇到了工作目录设置问题。 这就是错误所说的(无法加载文件)
在IDEA IDE中,我必须编辑配置,以便工作目录指向项目中的文件夹:android \ assets
未找到文件问题已解答here
如需进一步参考,请查看视频Mario Zechner有记录器以简化Eclipse用户的工作: Running and Debugging in Eclipse
答案 1 :(得分:0)
Couldn't load file: BG.png at com.badlogic.gdx.graphics.Pixmap.(Pixmap.java:148) at ...
我认为您的问题是您正在尝试加载文件,但不存在。您是否完全确定该位置Gdx.files.internal("BG.png")
中有文件。
如果你试图在android上的名字中加载大写字符的资源,你也会遇到很多问题。因此,如果您的文件存在,请尝试将其重命名为所有小写字符。