2013-09-28 5 views
0

Так что я пытаюсь загрузить изображение с помощью Slick2D, но по какой-то причине, я получаю следующее сообщение об ошибке при попытке сделать изображение на экране:Slick2D Загрузка изображения не будет работать

Sat Sep 28 16:37:59 NZST 2013 ERROR:null 
java.lang.NullPointerException 
    at org.newdawn.slick.Graphics.drawImage(Graphics.java:1350) 
    at org.newdawn.slick.Graphics.drawImage(Graphics.java:1399) 
    at Game.render(Game.java:58) 
    at org.newdawn.slick.GameContainer.updateAndRender(GameContainer.java:703) 
    at org.newdawn.slick.AppGameContainer.gameLoop(AppGameContainer.java:456) 
    at org.newdawn.slick.AppGameContainer.start(AppGameContainer.java:361) 
    at Game.main(Game.java:42) 
Sat Sep 28 16:37:59 NZST 2013 ERROR:Game.render() failure - check the game code. 
org.newdawn.slick.SlickException: Game.render() failure - check the game code. 
    at org.newdawn.slick.GameContainer.updateAndRender(GameContainer.java:706) 
    at org.newdawn.slick.AppGameContainer.gameLoop(AppGameContainer.java:456) 
    at org.newdawn.slick.AppGameContainer.start(AppGameContainer.java:361) 
    at Game.main(Game.java:42) 

Я использую это загрузить мой образ:

import org.newdawn.slick.Image; 
import org.newdawn.slick.SlickException; 

public class Textures { 

    static Image grass; 
    Game game; 


    public Textures() { 
      try { 
       grass = new Image("grass.jpg"); 
      } catch (SlickException e) { 
       e.printStackTrace(); 
      } 
    } 

} 

Я использую это, чтобы привлечь мое изображение:

for(int x = 0; x < app.getWidth(); x+=32) { 
    for(int y = 0; y < app.getHeight(); y+=32) { 
     g.drawImage(textures.grass, x, y); 
    } 
} 
+0

Вы когда-нибудь строили объект Texture? В противном случае конструктор никогда не будет вызван, а трава будет равна нулю. – Clark

+0

Какая строка строки 1350 «Graphics.java»? – Barett

ответ

1

Если вы получаете NullPointerException при попытке нарисовать Image, это обычно происходит потому, что загрузчик изображений не нашел изображение в указанном месте. Если вы используете Eclipse, обязательно сохраните свои изображения в source folder (например, с именем «resources»). Это гарантирует, что изображения будут перемещены в папку bin при компиляции (может потребоваться обновить исходную папку).

Независимо от вашей настройки, убедитесь, что путь к изображению правильный.

Смежные вопросы