LibGDX, GDX.files.internal() 找不到文件

我在使用带有资产目录的 LibGDX 时遇到问题。其实,我建我的项目文件夹这样。我按照本教程学习。(我在 Eclipse 上工作)我使用的代码是:


package com.mygdx.game;


import com.badlogic.gdx.ApplicationListener;

import com.badlogic.gdx.Gdx;

import com.badlogic.gdx.graphics.GL20;

import com.badlogic.gdx.graphics.g2d.Sprite;

import com.badlogic.gdx.graphics.g2d.SpriteBatch;

import com.badlogic.gdx.graphics.g2d.TextureAtlas;

import com.badlogic.gdx.graphics.g2d.TextureAtlas.AtlasRegion;

import com.badlogic.gdx.utils.Timer;

import com.badlogic.gdx.utils.Timer.Task;


public class MyGdxGame implements ApplicationListener {

    private SpriteBatch batch;

    private TextureAtlas textureAtlas;

    private Sprite sprite;

    private int currentFrame = 1;

    private String currentAtlasKey = new String("0001");


    @Override

    public void create() {        

        batch = new SpriteBatch();

        // THE PROBLEM IS UNDER THIS LINE

        textureAtlas = new TextureAtlas(Gdx.files.internal("spritesheet.atlas"));

        AtlasRegion region = textureAtlas.findRegion("0001");

        sprite = new Sprite(region);

        sprite.setPosition(120, 100);

        sprite.scale(2.5f);

        Timer.schedule(new Task(){

            ,0,1/30.0f);

    }

(如果代码难以阅读,我使用与下面链接的教程中完全相同的代码)


我的包浏览器看起来像这样: imgur link


它返回给我:


线程“LWJGL 应用程序”com.badlogic.gdx.utils.GdxRuntimeException 中的异常:找不到文件:com.badlogic.gdx.files.FileHandle.read(FileHandle.java:136) 处的 spritesheet.atlas(内部)com.badlogic .gdx.graphics.g2d.TextureAtlas$TextureAtlasData.(TextureAtlas.java:103) 在 com.badlogic.gdx.graphics.g2d.TextureAtlas.(TextureAtlas.java:231) 在 com.badlogic.gdx.graphics.g2d.TextureAtlas .(TextureAtlas.java:226) 在 com.badlogic.gdx.graphics.g2d.TextureAtlas.(TextureAtlas.java:216) 在 com.mygdx.game.MyGdxGame.create(MyGdxGame.java:23) 在 com.badlogic。 gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:149) at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:126)


我尝试了一些技巧,例如 Project>Clean、刷新、关闭和重新打开 Eclipse,甚至重新创建了一个项目。任何的想法 ?


浮云间
浏览 249回答 2
2回答

慕姐8265434

好吧,我找到了诀窍。对于那些遇到相同问题的人(在 Eclipse 上工作,但无论 IDE 是什么都一样),已经存在一个堆栈溢出线程,它提供了额外的解决方案。对我来说,我必须设置“工作目录”(例如桌面主目录)。为此,请继续运行>运行配置>参数,在工作目录的部分有默认和其他。勾选Other's box我不得不写${workspace_loc:my-gdx-game-core/assets}但我认为它的工作方式类似于${workspace_loc:[name-of-your-core-directory]/assets}。希望它有所帮助。

猛跑小猪

也许你没有链接资产文件夹,如果是这样,尝试右键单击 my-gdx-game-desktop,在属性对话框中选择 Java Build Path,单击链接源按钮,然后导航到 assets 文件夹。如果您已经设置它,请尝试使用此步骤读取,如果需要重新启动 eclipse
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java