JOGL und Texturing

Status
Nicht offen für weitere Antworten.

Campino

Top Contributor
hi,
wie funktioniert Texturing in JOGL/OpenGL. Ich weiß, dass das eventuell etwas komplex ist, um es einfach mal eben hier zu erklären, aber vielleicht weiß ja jemand ein gutes Tutorial. Danke schonmal....
 
okay, nach Lektüre des Tut's:
Code:
buff=image;
		 Raster r = buff.getRaster();
         int[] img = null;
         img = r.getPixels(0, 0, buff.getWidth(), buff.getHeight(), img);

         texture = ByteBuffer.allocateDirect(buff.getWidth() * buff.getHeight() * 3);
         for (int y = 0; y < buff.getHeight(); y++){
             for (int x = 0; x < buff.getWidth(); x++) {
                 texture.put((byte) img[(y * buff.getWidth() + x) * 3]);
                 texture.put((byte) img[(y * buff.getWidth() + x) * 3 + 1]);//hier
                 texture.put((byte) img[(y * buff.getWidth() + x) * 3 + 2]);
             }
	}
         tWidth = buff.getWidth();
         tHeight = buff.getHeight();

leider wirft dieser Code eine ArrayIndexOutOfBoundsException in der Markierten Zeile.

[edit]
Ich denke, in dem Array liegen die einzelnen Werte hintereinander, so als wären einfach alle Bildzeilen hintereinandergeklebt. mit y*width gehen wir in die richtige Reihe und mit +x in das richtige Feld. Aber was soll das *3?
und dass +1 bzw. +2?
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben