Tengo un error en java que la verdad no se de donde proviene, busque en google pero con las soluciones que daban no pude.
Para los que no saben que es LWJGL es como un motor grafico para java y slick un cargador de texturas entre otras cosas.
Dejo mi codigo primero:
Código:
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import org.lwjgl.LWJGLException;
import org.lwjgl.opengl.Display;
import org.lwjgl.opengl.DisplayMode;
import org.lwjgl.opengl.GL11;
import org.newdawn.slick.opengl.Texture;
import org.newdawn.slick.opengl.TextureLoader;
public class Textura{
private Texture wood;
public Textura() {
try {
Display.setDisplayMode(new DisplayMode(640, 480));
Display.setTitle("Texture Demo");
Display.create();
} catch (LWJGLException e) {
e.printStackTrace();
}
wood = loadTexture("wood");
// Initialization code OpenGL
GL11.glMatrixMode(GL11.GL_PROJECTION);
GL11.glLoadIdentity();
GL11.glOrtho(0, 640, 480, 0, 1, -1);
GL11.glMatrixMode(GL11.GL_MODELVIEW);
GL11.glEnable(GL11.GL_TEXTURE_2D);
while (!Display.isCloseRequested()) {
// Render
GL11.glClear(GL11.GL_COLOR_BUFFER_BIT);
wood.bind();
GL11.glBegin(GL11.GL_QUADS);
GL11.glTexCoord2f(0, 0);
GL11.glVertex2i(400, 400);
GL11.glTexCoord2f(1, 0);
GL11.glVertex2i(450, 400);
GL11.glTexCoord2f(1, 1);
GL11.glVertex2i(450, 450);
GL11.glTexCoord2f(0, 1);
GL11.glVertex2i(400, 450);
GL11.glEnd();
Display.update();
Display.sync(60);
}
Display.destroy();
}
private Texture loadTexture(String key) {
try {
Texture texture = TextureLoader.getTexture("PNG", new FileInputStream("res/"+key+".png"));
return texture;
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
public static void main(String[] args) {
Textura textura= new Textura();
}
}
Lo que hago es cargar una textura "wood" que se encuentra en la carpeta res. Aclaro que tengo cargado las librerías tanto slick como lwjgl.
Al compilar sale este error:
Código:
run:
Exception in thread "main" java.lang.NoClassDefFoundError: org/lwjgl/opengl/GL11
at org.newdawn.slick.opengl.InternalTextureLoader.getTexture(InternalTextureLoader.java:226)
at org.newdawn.slick.opengl.InternalTextureLoader.getTexture(InternalTextureLoader.java:184)
at org.newdawn.slick.opengl.TextureLoader.getTexture(TextureLoader.java:64)
at org.newdawn.slick.opengl.TextureLoader.getTexture(TextureLoader.java:24)
at Textura.loadTexture(TextureDemo.java:60)
at Textura.<init>(TextureDemo.java:24)
at Textura.main(TextureDemo.java:71)
Caused by: java.lang.ClassNotFoundException: org.lwjgl.opengl.GL11
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 7 more
Java Result: 1
La verdad nunca me paso esto u.u. El error viene de " wood = loadTexture("wood");" ya que si saco esto, el codigo funciona pero lo mas raro que vi a gente con este mismo codigo y les anda :S
Ayudaa, gracias!