Foro de elhacker.net

Programación => Java => Mensaje iniciado por: martin0290 en 25 Abril 2012, 03:44 am



Título: [Ayuda] Java con LWJGL + slick
Publicado por: martin0290 en 25 Abril 2012, 03:44 am
Hola buenos dias,

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!