4

そのため、パーティクル エフェクト ファイルを libgdx にロードしようとしましたが、ファイルが見つからないという例外が発生しました。

私のコードは次のとおりです。

 particleEffect = new ParticleEffect();
 particleEffect.load(Gdx.files.internal("bin/emiter.pahh"),Gdx.files.internal("bin/untitled.png")); 

フォルダの外観は次のとおりです

ここに画像の説明を入力:

エラーは次のとおりです。

Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeException: com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load file: bin/untitled.png/Untitled.png
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:107)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load file: bin/untitled.png/Untitled.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:126)
at com.badlogic.gdx.graphics.g2d.ParticleEffect.loadTexture(ParticleEffect.java:195)
at com.badlogic.gdx.graphics.g2d.ParticleEffect.loadEmitterImages(ParticleEffect.java:190)
at com.badlogic.gdx.graphics.g2d.ParticleEffect.load(ParticleEffect.java:138)
at com.me.mygdxgame.MyGdxGame.create(MyGdxGame.java:124)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:121)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:104)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: File not found: bin\untitled.png\Untitled.png (Internal)
at com.badlogic.gdx.files.FileHandle.read(FileHandle.java:127)
at com.badlogic.gdx.files.FileHandle.length(FileHandle.java:566)
at com.badlogic.gdx.files.FileHandle.readBytes(FileHandle.java:215)
at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:137)
... 11 more

何が問題なのですか?

4

2 に答える 2

2

ファイルパスは「assets/emiter.phh」です。

写真によると、「assets/emiter.pahh」のようになります。

編集:

改訂されたエラーメッセージを確認しました。

Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeException: com.badlogic.gdx.utils.GdxRuntimeException: File not found: assets\emiter.pahh (Internal)
at   com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:107)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: File not found: assets\emiter.aphh (Internal)

スタックトレースの途中で名前が変わったという事実は私の心を困惑させます...

"File not found: assets\emiter.pahh (Internal)"
"File not found: assets\emiter.aphh (Internal)"

エラーはlibGDXのファイルハンドルに起因しているため、正しく名前を付けていますか?また、ファイルは実行中のプロジェクトの「bin」フォルダーに配置されていますか?'my-gdx-game / bin/emitter.pahh'にファイルが表示されるはずです。

また、libGDXテストプロジェクトでParticleEmitterTestを実行してみる必要がありますか?

Edit2:

これらの2行を次のように変更する必要があります。

particleEffect = new ParticleEffect();
particleEffect.load(Gdx.files.internal("bin/emiter.pahh"),
    Gdx.files.internal("bin/untitled.png"));

に:

particleEffect = new ParticleEffect();
particleEffect.load(Gdx.files.internal("bin/emiter.pahh"),
    Gdx.files.internal("bin"));

画像のパスはエミッタファイル内で定義されていると思います:)。

于 2012-09-25T20:46:27.160 に答える
1

IntelliJ では、この「level_bodies\level6\」のようなパスを持つ OSX でも同じエラーが発生する可能性があります。Windowsでは動作します。

于 2012-11-13T16:13:39.047 に答える