J'essaye d'apprendre LibGDX, j'installe tous les logiciels listés ici avec un nouvel Eclipse 4.3 sur un Mac OS X Maverick fraîchement formaté.
Tout se passe bien, après un redémarrage, je télécharge et exécute le gdx-setup.jar, remplis le formulaire et l'importe dans Eclipse.
Aucune erreur, aucun avertissement, lorsque j'essaye d'exécuter le bureau. (Cliquez avec le bouton droit sur le projet de bureau, Exécuter en tant que -> Application Java).
J'ai cette erreur
Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load file: badlogic.jpg
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:130)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:121)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:100)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:92)
at com.diesel.bugs.DieselBugs.create(DieselBugs.java:21)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:136)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:114)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: File not found: badlogic.jpg (Local)
at com.badlogic.gdx.files.FileHandle.read(FileHandle.java:134)
at com.badlogic.gdx.files.FileHandle.readBytes(FileHandle.java:218)
at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:137)
J'ai trouvé beaucoup de problèmes similaires ici, je les essaie tous sans aucun bon résultat ... Hier soir, j'ai trouvé cela , très cool, j'ai le dernier Java 1.8, un mac et Eclipse s'adaptent parfaitement ...
Mais pas de succès, j'essaye avec Java 1.6 et 1.7, toujours la même erreur (aucun fichier trouvé, j'ai gardé Java 1.7)
Je commence à faire du débogage, ici ma seule modification du code d'origine généré par l'importation.
package com.diesel.bugs;
import com.badlogic.gdx.ApplicationAdapter;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.GL20;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
public class DieselBugs extends ApplicationAdapter {
SpriteBatch batch;
Texture imgExternal,imgLocal;
@Override
public void create () {
batch = new SpriteBatch();
String pathLocal = Gdx.files.getLocalStoragePath();
String pathExternal = Gdx.files.getExternalStoragePath();
Boolean isExternal = Gdx.files.isExternalStorageAvailable();
Boolean isLocal = Gdx.files.isLocalStorageAvailable();
imgExternal = new Texture(Gdx.files.external("/Desktop/badlogic.jpg"));
imgLocal = new Texture(Gdx.files.local("badlogic.jpg"));
}
@Override
public void render () {
Gdx.gl.glClearColor(1, 0, 0, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
batch.begin();
batch.draw(imgExternal, 0, 0);
batch.end();
}
}
La chose étrange est que pathLocal est égal à "". Est-il normal que Gdx.files.getLocalStoragePath () ne renvoie rien (chaîne vide)?
Également
imgExternal = new Texture(Gdx.files.external("/Desktop/badlogic.jpg"));
Fonctionne très bien. seul le local donne l'erreur, isLocal également et isExternal renvoie true.
Et comme je l' ai essayé un bon nombre de combinaisons, /assets/data/badlogic.jpg
, /assets/badlogic.jpg
, /data/badlogic.jpg
, data/badlogic.jpg
, et badlogic.jpg
.
L'image badlogic.jpg est là et je l'ai mise à plusieurs endroits pour être sûr.
Et maintenant, la raison pour laquelle je suis ici pour obtenir de l'aide est que j'essaie simplement la même étape sur un PC et tout fonctionne très bien.
Quel est le problème avec mon nouveau mac et son paramétrage?