2012-09-25 58 views
4

所以我一直在試圖加載一個粒子效果文件到libgdx和即時獲取文件未找到異常。Little LibGdx trouble加載文件

繼承人我的代碼:

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

繼承人如何我的文件夾看看

enter image description here

而且繼承人的錯誤:

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 

可能是什麼問題呢?根據您的圖片「資產/ emiter.pahh」:

+0

我從你的文件夾佈局中發現的一些東西:'assets'文件應該在你的Android項目中,並從那裏鏈接到你的桌面項目(包裝Android不適用於鏈接的資源)。它看起來像是從公共項目鏈接的資產。 (請參閱http://code.google.com/p/libgdx/wiki/ProjectSetup#Asset_folder_setup)但是這不是你所看到的問題,因爲你在桌面上遇到問題... –

回答

2

你的文件路徑:「資產/ emiter.phh」

它應該是。

編輯:

我看着你修改錯誤信息:

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:

你需要這兩條線路從改變:

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")); 

相信對於圖像的路徑是emiter文件中定義:)。

+0

將它改爲pahh 。同樣的錯誤,沒有任何更改。 –

+0

更新我的問題。 pahh改爲aphh是我的手輸入錯誤,我很抱歉! (這次複製粘貼錯誤);)我也看不到我的gdx-game forlder中的bin文件夾,當我嘗試創建它時,它說它已經存在。即使我以某種方式將文件複製到bin文件夾(主項目和桌面)。它似乎已經通過emmiter文件沒有發現問題,甚至更有趣的一個..看看;) –

+0

好吧,它完成了!非常感謝你! –

0

在OSX上,類似於IntelliJ中的「level_bodies \ level6 \」路徑可能會發生同樣的錯誤。在Windows下它工作。