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:
package Prueba; public class TextureDemo { public static void main(String[] args) { Textura text = new Textura(); text.start(); } }
Código:
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.package Prueba; 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.Color; import org.newdawn.slick.opengl.Texture; import org.newdawn.slick.opengl.TextureLoader; import org.newdawn.slick.util.ResourceLoader; public class Textura { private Texture wood; public Textura () { } public void start () { initGL(); init(); while (!Display.isCloseRequested()) { GL11.glClear(GL11.GL_COLOR_BUFFER_BIT); render(); Display.update(); Display.sync(60); if (Display.isCloseRequested()) { Display.destroy(); System.exit(0); } } } private void initGL () { try { Display.setDisplayMode(new DisplayMode(640, 480)); Display.setTitle("Texturas"); Display.create(); } catch (LWJGLException e) { e.printStackTrace(); } 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); } private void init () { wood = loadTexture("wood"); } private void render () { Color.white.bind(); 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(); } private Texture loadTexture(String key) { try { Texture texture = TextureLoader.getTexture("PNG", ResourceLoader.getResourceAsStream("res/"+key+".png")); return texture; } catch (IOException e) { e.printStackTrace(); } return null; } }
Al compilar sale este error:
Código:
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 :Srun: 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 Prueba.Textura.loadTexture(Textura.java:86) at Prueba.Textura.init(Textura.java:62) at Prueba.Textura.start(Textura.java:26) at Prueba.TextureDemo.main(TextureDemo.java:10) 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) ... 8 more Java Result: 1
Ayudaa, gracias!