0

絵を描こうとしているのですが、問題があります。コードは次のとおりです。

@Override
public void render(float delta) {
    Gdx.gl.glClearColor(0,0,0,1);
    Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

    batch.begin();
    splash.draw(batch);
    batch.end();
}


@Override
public void show() {
    Texture splashTexture = new Texture("/img/intrologo.png");
    splash = new Sprite(splashTexture);
    splash.setSize(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
}

デスクトップで実行しようとしています。窓が走る!しかし、コンソールに多くのエラーが表示されます。どうぞ:

Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeException: com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load file: assets/img/intrologo.png
   at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:113)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load file: assets/img/intrologo.png
   at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:140)
   at com.badlogic.gdx.graphics.glutils.FileTextureData.prepare(FileTextureData.java:64)
   at com.badlogic.gdx.graphics.Texture.load(Texture.java:175)
   at com.badlogic.gdx.graphics.Texture.create(Texture.java:159)
   at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:133)
   at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:122)
   at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:118)
   at com.eamonn.blackpoint2.screens.splash.show(splash.java:32)
   at com.badlogic.gdx.Game.setScreen(Game.java:62)
   at com.eamonn.blackpoint2.Blackpoint2.create(Blackpoint2.java:12)
   at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:127)
   at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:110)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: File not found: assets/img/intrologo.png (Internal)
   at com.badlogic.gdx.files.FileHandle.read(FileHandle.java:127)
   at com.badlogic.gdx.files.FileHandle.length(FileHandle.java:580)
   at com.badlogic.gdx.files.FileHandle.readBytes(FileHandle.java:215)
   at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:137)
   ... 11 more

私はこれを LibGDX のフォーラムで尋ねましたが、数日経っても回答がありませんでした。わざと無視されているようなものです。

ファイル「intrologo.png」は反抗的に存在しますが、実際にはEclipseに表示されます!

窓も閉められない。ウィンドウを強制終了する必要があり、神経質になります:(

ありがとう!どんな助けでも大歓迎です!

4

2 に答える 2

0

これを変更してみてください

Texture splashTexture = new Texture("/img/intrologo.png");

これへ

Texture splashTexture = new Texture(Gdx.files.internal("img/intrologo.png"));

テクスチャを作成するときは、パス名ではなくファイルが必要です。参照: http://libgdx.l33tlabs.org/docs/api/com/badlogic/gdx/graphics/Texture.html

Assetsフォルダーでは、次のようになります

assets
|_img
 |_intrologo.png
于 2013-06-22T18:04:42.930 に答える
0

このリンクは、グラフィックをレンダリングするための簡単なセットアップを示しています。

  1. テクスチャの splashTexture を初期化するとき、通常は libGDX を使用して、アセットを「data」という名前のアセット フォルダに保持します。次のように初期化してみてください。

    テクスチャ スプラッシュテクスチャ = new Texture(Gdx.files.internal("data/intrologo.png"));

  2. バッチで draw メソッドを呼び出し、テクスチャを描画する x 座標と y 座標と共にテクスチャを渡す必要があります。

    batch.begin();

    batch.draw(splashTexture, 50, 100);

    バッチ.end();

x 座標と y 座標で遊んで味わいましょう。

于 2013-06-18T15:08:44.383 に答える