Hey.. ich hab mal wieder ein Problem :/
Ich hab echt alles durchsucht was Googel hergegeben hat, aber bin leider auf nix gestoßen.
Ich arbeite ja grad die Nehe Tutorials durch und da werden Texturen noch mit dem
geladen, und das ist doch ziemlich abweichend von der leichten Variante mit Slick. Also hab ich probiert es irgendwie auf meine Art zu basteln und nach gefühlten Stunden hab ich es zumindest hinbekommen, dass der Block seine Textur zumindest irgendwie ändert wenn ich diese binde.
Ich hab nun das
Das ist die erste Variante, die ansatzweise funktioniert, aber wirklich nur ansatzweise den der Würfel hat nicht die Textur sondern nur irgend ne Farbe aus der Textur (die Textur ist überwiegend braun, also ist der Würfel auch braun).
Weis wer vllt was da falsch läuft?
Mir selbst fehlt noch
aber ich hab grad einfach kein Peil wie ich das noch reinbringen könnte.
Das ist echt schlimm. Egal welches OpenGL Tutorial im Internet, keins ist up2date oder funktioniert / man kann einfach nicht drauf los lernen sondern sich erst mit tausend Problemen rumschlagen :/
Das ist der Code wie ich ihn aus der LWJGL Lösung hab, aber eben mit devil.IL (was nicht mehr fortgeführt wird)
Vielleicht erweist sich nochmal jemand gnädig, weil mein Kopf platz und ich hab grad echt kein Peil :/
Grüße
Ich hab echt alles durchsucht was Googel hergegeben hat, aber bin leider auf nix gestoßen.
Ich arbeite ja grad die Nehe Tutorials durch und da werden Texturen noch mit dem
Code:
devil.IL
Ich hab nun das
Java:
try {
t1 = TextureLoader.getTexture("JPG", new FileInputStream(new File("res/1.jpg")));
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
ByteBuffer textureBuffer = BufferUtils.createByteBuffer(t1.getTextureData().length);
textureBuffer.put(t1.getTextureData());
textureBuffer.flip();
GL11.glBindTexture(GL11.GL_TEXTURE_2D, t1.getTextureID());
GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MAG_FILTER, GL11.GL_NEAREST);
GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MIN_FILTER, GL11.GL_NEAREST);
glTexImage2D(GL_TEXTURE_2D, 0, 3, (int)t1.getWidth(), (int)t1.getHeight(), 0, GL_RGB, GL_UNSIGNED_BYTE, textureBuffer);
Das ist die erste Variante, die ansatzweise funktioniert, aber wirklich nur ansatzweise den der Würfel hat nicht die Textur sondern nur irgend ne Farbe aus der Textur (die Textur ist überwiegend braun, also ist der Würfel auch braun).
Weis wer vllt was da falsch läuft?
Mir selbst fehlt noch
Code:
glGenTextures
Das ist echt schlimm. Egal welches OpenGL Tutorial im Internet, keins ist up2date oder funktioniert / man kann einfach nicht drauf los lernen sondern sich erst mit tausend Problemen rumschlagen :/
Das ist der Code wie ich ihn aus der LWJGL Lösung hab, aber eben mit devil.IL (was nicht mehr fortgeführt wird)
Java:
IntBuffer image = ByteBuffer.allocateDirect(4).order(ByteOrder.nativeOrder()).asIntBuffer();
IL.ilGenImages(1, image);
IL.ilBindImage(image.get(0));
IL.ilLoadImage(path);
IL.ilConvertImage(IL.IL_RGB, IL.IL_BYTE);
ByteBuffer scratch = ByteBuffer.allocateDirect(IL.ilGetInteger(IL.IL_IMAGE_WIDTH) * IL.ilGetInteger(IL.IL_IMAGE_HEIGHT) * 3);
IL.ilCopyPixels(0, 0, 0, IL.ilGetInteger(IL.IL_IMAGE_WIDTH), IL.ilGetInteger(IL.IL_IMAGE_HEIGHT), 1, IL.IL_RGB, IL.IL_BYTE, scratch);
// Create A IntBuffer For Image Address In Memory
IntBuffer buf = ByteBuffer.allocateDirect(12).order(ByteOrder.nativeOrder()).asIntBuffer();
GL11.glGenTextures(buf); // Create Texture In OpenGL
GL11.glBindTexture(GL11.GL_TEXTURE_2D, buf.get(0));
// Typical Texture Generation Using Data From The Image
// Create Nearest Filtered Texture
GL11.glBindTexture(GL11.GL_TEXTURE_2D, buf.get(0));
GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MAG_FILTER, GL11.GL_NEAREST);
GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MIN_FILTER, GL11.GL_NEAREST);
GL11.glTexImage2D(GL11.GL_TEXTURE_2D, 0, GL11.GL_RGB, IL.ilGetInteger(IL.IL_IMAGE_WIDTH),
IL.ilGetInteger(IL.IL_IMAGE_HEIGHT), 0, GL11.GL_RGB, GL11.GL_UNSIGNED_BYTE, scratch);
Vielleicht erweist sich nochmal jemand gnädig, weil mein Kopf platz und ich hab grad echt kein Peil :/
Grüße
Zuletzt bearbeitet: