# JOGL Texturing



## Developer_X (6. Nov 2009)

Hi, kann mir einer erklären, mit Code, wie man Texturing mit JOGL macht?

Danke erstmal, Developer_X


----------



## frapo (6. Nov 2009)

Google spuckt dazu einiges aus, z.B. Jogl.info - Alles rund um die Java Bindings für OpenGL


----------



## Gast (6. Nov 2009)

http://too-late.de/kskb/gl2sample1.zip

Wie gehabt, nicht entpacken, sondern saugen und dann:
Eclipse -> File -> Import -> General -> Existing Projects into Workspace -> Select archive file -> Browse -> gl2sample1.zip auswählen -> Öffnen -> Finish

Für Erklärungen siehe z.B. Tutorial Lektion 4 ? DGL Wiki
(ist für Delphi, spielt aber keine Rolle da in gl2sample1.zip funktionierender Code ist)
(oder eben z.B. jogl.info / am besten beides lesen )

(Es gibt bei den JOGL Utils auch noch TextureIO und TextureCoords, wenn Dich das interessiert, siehe z.B. demos.texture.TestTexture. Ich nutze aber die util Klassen (fast) nie sondern gehe immer den klassischen Weg wie oben im Beispiel.) 

Gruß,
Fancy


----------



## Marco13 (7. Nov 2009)

Es deutet sich an, dass es ähnlich wie bei Java3D laufen wird... Oder noch schlimmer...  @Fancy: Dir wünsche ich noch viel Durchhaltevermögen... wenn es so weitergeht, postest du hier denmächst einen 3D-Shooter, den zwar DU geschrieben hast, wo aber im Abspann ein anderer Name steht


----------



## Developer_X (7. Nov 2009)

Noch was zum Lightning.
Ích hab in nem tutorial gelesen, dass man das so macht:

```
// Prepare light parameters.
        float SHINE_ALL_DIRECTIONS = 1;
        float[] lightPos = {-30, 0, 0, SHINE_ALL_DIRECTIONS};
        float[] lightColorAmbient = {0.2f, 0.2f, 0.2f, 1f};
        float[] lightColorSpecular = {0.8f, 0.8f, 0.8f, 1f};

        // Set light parameters.
        gl.glLightfv(GL.GL_LIGHT1, GL.GL_POSITION, lightPos, 0);
        gl.glLightfv(GL.GL_LIGHT1, GL.GL_AMBIENT, lightColorAmbient, 0);
        gl.glLightfv(GL.GL_LIGHT1, GL.GL_SPECULAR, lightColorSpecular, 0);

        // Enable lighting in GL.
        gl.glEnable(GL.GL_LIGHT1);
        gl.glEnable(GL.GL_LIGHTING);

        // Set material properties.
        float[] rgba = {0.3f, 0.5f, 1f};
        gl.glMaterialfv(GL.GL_FRONT, GL.GL_AMBIENT, rgba, 0);
        gl.glMaterialfv(GL.GL_FRONT, GL.GL_SPECULAR, rgba, 0);
        gl.glMaterialf(GL.GL_FRONT, GL.GL_SHININESS, 0.5f);
```
bevor man ein Object zeichnet.

Aber:
Die ganze final ints, also GL_AMBIENT, GL_SPECULAR, usw.. gibt es bei mir in Eclipse nciht.

Ich habe es gemacht, wie mir fancy geraten hat, das ganze in eclipse, von diesem zip reinzupacken, ich hab alles von jogl, doch diese variablen gibt es bei mir nicht, was soll ich machen.

Kann mir einer von euch einen kurzen code posten, wie man lightning macht?


----------



## Developer_X (7. Nov 2009)

frapo hat gesagt.:


> Google spuckt dazu einiges aus, z.B. Jogl.info - Alles rund um die Java Bindings für OpenGL



frapo, dass ist aber nicht der modernste stand, dieser code geht bei mir nämlich nicht.


----------



## Noctarius (7. Nov 2009)

Gut, dass das bloß nicht dein Fehler sein kann falls mal etwas nicht geht.


----------



## Gast (7. Nov 2009)

GL_AMBIENT liegt jetzt z.B. in GL2.GL_AMBIENT (genau genommen in GLLightingFunc, aber das ist nicht so dramatisch).
Mit den anderen verhält es sich analog.

@Marco: Danke, ich glaube Durchhaltevermögen werde ich auch brauchen, aber en Shooter werd ich Ihm nicht bauen 

Gruß,
Fancy


----------



## Developer_X (7. Nov 2009)

Gast hat gesagt.:


> GL_AMBIENT liegt jetzt z.B. in GL2.GL_AMBIENT (genau genommen in GLLightingFunc, aber das ist nicht so dramatisch).
> Mit den anderen verhält es sich analog.
> 
> @Marco: Danke, ich glaube Durchhaltevermögen werde ich auch brauchen, aber en Shooter werd ich Ihm nicht bauen
> ...



Hey man, jetzt funktioniert das ja alles.
Danke man!
Danke!

Noch was, in dem tutorial das ich habe momentan erstma als einstieg, und ja ich kann english,
JOGL (Java OpenGL) Tutorial
hieß es mit dem texturing:

```
// Load earth texture.
        try 
        {
            InputStream stream = getClass().getResourceAsStream("earth.jpg");
            TextureData data = TextureIO.newTextureData(stream, false, "jpg");
            earthTexture = TextureIO.newTexture(data);
        }
        catch (Exception exc) 
        {
        	exc.printStackTrace();
        }
```
in der init methode würde mir eine textur laden,
aber irgendwie funktioniert das bei mir nicht, weil er den Stream nicht öffnet, da steht dann immer Stream = null.
Fehlermeldung:

```
java.io.IOException: Stream was null
	at com.sun.opengl.util.texture.TextureIO.newTextureDataImpl(TextureIO.java:784)
	at com.sun.opengl.util.texture.TextureIO.newTextureData(TextureIO.java:205)
	at Samples.Sample0.init(Sample0.java:32)
	at com.sun.opengl.impl.GLDrawableHelper.init(GLDrawableHelper.java:88)
	at javax.media.opengl.awt.GLCanvas$InitAction.run(GLCanvas.java:603)
	at com.sun.opengl.impl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:149)
	at javax.media.opengl.awt.GLCanvas$DisplayOnEventDispatchThreadAction.run(GLCanvas.java:637)
	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)
```
Was mache ich falsch, die datei gibt es ja, earth.jpg


Und danke für alle Tipps die du mir gibt Fancy.
Wirklich.

Developer_X


----------



## Gast (7. Nov 2009)

Developer_X hat gesagt.:


> Was mache ich falsch, die datei gibt es ja, earth.jpg



Das mag sein, aber wohl nicht da wo die JVM danach sucht.

Mach mal ein 


```
InputStream stream = getClass().getResourceAsStream("earth.jpg");
System.out.println(stream);
```

Und das ausgegebene null wird Dir sagen das die Datei nicht an der richtigen Stelle ist.

Siehe noch mal in das gl2sample1:


```
private static final String imagePath = "late/resources/jogl2/gl2/image.png";
[..]
getClass().getClassLoader().getResourceAsStream(imagePath)
```

und sieh Dir an wo das image.png im Project liegt. Ist alles nur eine Frage der richtigen Pfade.

Gruß,
Fancy


----------



## Developer_X (7. Nov 2009)

danke


----------



## Developer_X (7. Nov 2009)

Gast hat gesagt.:


> Das mag sein, aber wohl nicht da wo die JVM danach sucht.
> 
> Mach mal ein
> 
> ...



wie viele gibt es eig.?
http://too-late.de/kskb/gl2sample0.zip
http://too-late.de/kskb/gl2sample1.zip

und?


----------



## Developer_X (7. Nov 2009)

Hey, mit dem chema, wie es in dem zip beschrieben ist, hab ich das ganze mal versucht auf einen sphere zu übertragen.


```
GLUquadric earth = glu.gluNewQuadric();
        glu.gluQuadricTexture(earth, true);

        glu.gluQuadricDrawStyle(earth, GLU.GLU_FILL);
		glu.gluQuadricTexture(earth, true);

        glu.gluQuadricNormals(earth, GLU.GLU_FLAT);
        glu.gluQuadricOrientation(earth, GLU.GLU_OUTSIDE);
        final float radius = 1f;
        final int slices = 20;
        final int stacks = 20;
        glu.gluSphere(earth, radius, slices, stacks);
        glu.gluDeleteQuadric(earth);
```

Das sieht dann aber leider so aus:
 Warum?
Warum wird außerdem die normale textur so umgeändert?

Welche Objekte kann man eig. zeichnen mit jogl?
Wie kann man eig. das HUD Zeichnen? (Foreground&&Background)
Bitte beantworte diese fragen, danke, DEveloper_X


----------



## Gast (8. Nov 2009)

Developer_X hat gesagt.:


> Warum?



Auch wenn Du Deine Kugel als gluSphere zeichnest, so besteht diese trotzdem aus etlichen Dreiecken. Diese Dreiecke werden nicht sortiert von hinten nach vorne gezeichnet, sondern zufällig. Dabei kann es passieren das einzelne Dreiecke die aktuell eigentlich hinten an der Kugel liegen, spät gezeichnet werden und dabei Dreiecke der Vorderseite fälschlicherweise verdecken. Um dies zu verhindern gibt es in OpenGL einen Depth Buffer der für jeden Pixel die aktuelle Tiefeninformation speichert und so für jeden Pixel eines Dreiecks entscheiden kann ob dieses vor oder hinter dem bereits gezeichneten Pixel liegt. Diesen Tiefentest musst Du aktivieren (in der init()) mit:


```
gl.glEnable(GL.GL_DEPTH_TEST);
```




Developer_X hat gesagt.:


> Warum wird außerdem die normale textur so umgeändert?



Die Farben sind vertauscht weil der Rot und Blau Kanal vertauscht sind. Ersetze in der init() das glTexImage2D mit


```
gl.glTexImage2D(GL.GL_TEXTURE_2D, 0, GL.GL_RGB, imageWidth, imageHeight, 0, GL2.GL_BGR, GL.GL_UNSIGNED_BYTE, imagePixels);
```




Developer_X hat gesagt.:


> Welche Objekte kann man eig. zeichnen mit jogl?



Vor allem Dreiecke, es gehen aber auch Polygone, Linien und Punkte. In den GLU und GLUT Klassen gibt es außerdem einige geometrische Körper insbesondere den bekannten glutSolidTeapot().

Aber, praktisch jedes OpenGL Programm zeichnet entweder den glutSolidTeapot (wenn es aktuell nicht auf die Geometrie ankommt) oder ausschließlich Dreiecke!

Der normale Weg ist:
1. Du modellierst Deine 3D Objekte in einem 3D Model Programm (z.B. Blender)
2. Du exportierst Dein Objekt als Dreiecksgitternetz (z.B. als obj File)
3. Du liest Dein obj File mit Java ein
4. Du überträgst Dein 3D Gitternetz in den Speicher der Grafikkarte
5. Du läst Dein Gitternetz darstellen

(Das ist vollkommen analog zu Texturen: Zeichnen (mit Photoshop / Gimp), exportieren (als JPG / PNG), einlesen in JAVA (ImageIO), in den Speicher der Grafikkarte schieben (glTexImage2D), darstellen (glBindTexture).  Nur ist bei der Geometrie "etwas" mehr zu implementieren )




Developer_X hat gesagt.:


> Wie kann man eig. das HUD Zeichnen? (Foreground&&Background)



1. Szene zeichnen
2. Depth Test ausschalten
3. Projektionsmatrix auf 2D orthogonal umstellen
4. HUD zeichnen (liegt dann automatisch im Vordergrund) 

Gruß,
Fancy


----------



## Developer_X (8. Nov 2009)

danke für alle deine hilfen.
Du musst verstehen, Java3D hat ja ein ganz anderes Konzept als JOGL, also meines Erachtens, und da ich neu in JOGL bin, habe ich noch viel zu lernen, danke dass du mich so unterstützt.
Wirklich danke.


----------



## Evil-Devil (9. Nov 2009)

Da JOGL bekanntlich primär ein OpenGL Binding ist und nicht wie Java3D ein kompletter Szenegraph empfiehlt es sich entsprechende OpenGL Lektüre zu lesen. Ein Anfang hierfür kann u.a. das OpenGL RedBook sein: OpenGL Programming Guide : Table of Contents

Überhaupt sitzt man mit JOGL und Co relativ nah an der Hardware und muss für vieles selbst die Funktionalität erstellen. Alternativ kann man auf bestehende Libs zurückgreifen die einem die Arbeit annehmen.


----------



## Marco13 (9. Nov 2009)

Wichtige Grundlagen stehen im Redbook - das ist klar. Allerdings sind die Unterschiede von OpenGL >1 zu dem, was im Redbook steh, inzwischen so groß, dass man das mit etwas Vorsicht genießen sollte...


----------



## Evil-Devil (9. Nov 2009)

Das ist klar, aber willst du ihm gleich Shader und derlei zumuten? Dann gibt es hier nur noch Tränen zu vergießen. Er sollte zunächst die Grundlagen erlernen um ein Verständnis für die Materie zu erhalten. Denn sonst nützen ihm Shader und Co. mMn herzlich wenig.


----------



## Marco13 (9. Nov 2009)

Natürlich, wie gesagt, die Grundlagen stehen dort drin, und das ist auch OK, aber ... ... ... aus der Erfahrung heraus ...  ... OK, gut, den Thread "Hilfe, er unterstreicht glBegin, obwohl das doch genau so im Buch steht" beantwortest DU :bae:


----------



## Evil-Devil (9. Nov 2009)

Marco13 hat gesagt.:


> OK, gut, den Thread "Hilfe, er unterstreicht glBegin, obwohl das doch genau so im Buch steht" beantwortest DU :bae:


.. vielleicht sollte man noch tiefer anfangen...bei "Wie nutze ich meine Eclipse IDE!?" oder "Wie lese und verstehe ich eine Readme Datei?!" ...

Naja, erstmal muss er sich überhaupt bis glBegin vorkämpfen und es von selbst nutzen ohne es aus einem Tut abzuschreiben.


----------



## Developer_X (10. Nov 2009)

War die ganze zeit net on, wollt jetzt aber noch was fragen.
Wie kann ich "Texture"s laden?

Ich möchte nämlich 2 objekte, mit 2 verschiedenen Texturen "versehen".
Und in der Klasse Textur gibt es zahlreiche Methoden, z.B.
für binden von Texturen:
texture.bind();

versteht ihr?
Dass ich wenn ich das erste Objekt zeichne erst einmal, die textur "bind"e, die für das erste objekt sein soll, danach zeichne ich das erste objekt, und danach das ganze noch einmal für das zweite objekt.

Versteht ihr?

Ich will wissen wie man Texturen ladet.
Fancy, kannst du mir dabei helfen, pls.`?


----------



## Evil-Devil (10. Nov 2009)

Hätte hier noch ein kleines Tutorial wie man TGAs in LWJGL lädt. Das sollte sich relativ einfach nach JOGL portieren lassen.
lwjgl:tutorials:textures:tga [LWJGL Wiki]
Für JPGs musst du dann was anderes nehmen.

Ansonsten musst du nachdem du eine Textur geladen hast sie wirklich erst binden, dann zeichnen und dann die nächste Textur binden und wieder zeichnen lassen.


----------



## Developer_X (10. Nov 2009)

ich hab mir das mal ein bisschen angeschaut.
Das ist aber auch mit einer Library geschrieben,
die ich nicht habe. Ich habe doch nur das ganz normale JOGL.
Geht das nciht einfacher`?
Dass man einfach die daten aus einem bild ladet, und sie der textur zuweist.
Es gibt doch bestmmt einen ganz einfachen weg.
Wie lautet der noch gleich`?


----------



## Spacerat (10. Nov 2009)

Äehhm... Ich fang' grad' mit Java3D an und wollte mal fragen wie das so geht mit diesen performanten 3D-Welten (Ladscapes)...
...Ja nee... Ist natürlich völliger Blödsinn... Ist ja kein Geheimnis, das ich mit Java3D bereits durch bin.
Aber so kommt mir gerade dieses Jungesellen-Vorgehen unseres Developer_X vor. Immer ganz Hinten anfangen... dann ist man eher Fertig.:lol:
@Developer_X: Mal im Ernst... Hast du was gegen Tutorials, insbesondere gegen die, wo man nicht mit Copy-Paste arbeiten kann? Ich hatte dir doch mal einen Link zu den deutschen Nehe-Tuts gegeben. Passend dazu habe ich auch noch die JOGL-Sourcen. Wie man Texturen an Objekte bindet steht dort in den ersten 6 Lektionen. Für ein Individuum mit Hochschulreife (wie du behauptest eines zu sein) kann es doch wohl nicht all zu schwer sein, sich die relevanten Quelltextbereiche heraus zu picken, zu vergleichen um sich dann selbst zusammenreimen zu können, wie man z.B. LWJGL oder gar C++ zu JOGL portiert. Ich hab's doch auch geschafft... und das grösstenteils sogar ohne Hilfe eines Forums und vor allem mit nur mittlerer Reife... Zeig doch einfach mal ein bissl' Engagement wenn du schlicht Spass am Proggen hast. So nach dem Motto "...euch zeig' ich's!!!".


----------



## Guest2 (10. Nov 2009)

Moin,

Du hast schon rausbekommen das die Textur erst gebunden werden muss ehe die dazu passende Geometrie gezeichnet wird. Zusammen mit dem gl2sample1 solltest Du damit eigentlich schon alles haben um eine zweite Textur einzubinden.

Ob das nun über ImageIO und glBindTexture() geschieht (so wie in gl2sample1) oder über TextureIO und texture.bind() (so wie in gl2sample02) ist dabei gleich. 

Wie dem auch sei, hier ein Beispiel mit TextureIO und zwei Texturen:

http://too-late.de/kskb/gl2sample02.zip

Wie immer:
Eclipse -> File -> Import -> General -> Existing Projects into Workspace -> Select archive file -> Browse -> gl2sample02.zip auswählen -> Öffnen -> Finish

Gruß,
Fancy


----------



## Evil-Devil (11. Nov 2009)

Developer_X hat gesagt.:


> ich hab mir das mal ein bisschen angeschaut.


Immerhin...


Developer_X hat gesagt.:


> Das ist aber auch mit einer Library geschrieben,
> die ich nicht habe. Ich habe doch nur das ganz normale JOGL.


Ja, mit LWJGL, das effektiv das selbe wie JOGL ist. Ein OpenGL Binding! Die Portierung dürfte sich bis auf die Buffer-Elemente 1:1 übernehmen lassen.


Developer_X hat gesagt.:


> Geht das nciht einfacher`?


Nein, es sei denn du nutzt eine fertige Engine. Wenn du Systemnah programmieren willst, dann stehen dir lediglich ein paar Werkzeuge zur Verfügung und die Tools die du benötigst musst du dir selbst bauen.



Developer_X hat gesagt.:


> Dass man einfach die daten aus einem bild ladet, und sie der textur zuweist.
> Es gibt doch bestmmt einen ganz einfachen weg.


Wie schon gesagt wurde, ImageIO und dann entsprechend übergeben, aber ob das nun wirklich einfacher ist wage ich zu bezweifeln. Für LWJGL gäbe es SLICK als Textureloader, aber ob es sowas auch von der JOGL Community gibt...kA.



Developer_X hat gesagt.:


> Wie lautet der noch gleich`?


Selbstinitiative, Nachdenken, viel lesen und ausprobieren.
Ich kann mich daran erinnern einen einfachen DDS Loader aus der MSDN und NVidia Doku (C++) nach LWJGL übersetzt zu haben. Das hat "nur" 3 Feierabend-Tage gedauert, bis es so lief wie es laufen sollte.

Also zeig mal bitte mehr Eigenleistung. Denn Vorkauen mag denke ich niemand hier irgendwas.

Evil


----------



## Marco13 (11. Nov 2009)

@Fancy: Mein Respekt steigt mit jedem Link. 
Obwohl ... vielleicht ist dir ja langweilig ... (bis du Student oder arbeitslos? )


----------



## Developer_X (11. Nov 2009)

danke vielmals fancy, was gibt es denn eig. sonst noch für glsamples, dann muss ich das Forum hier nicht mehr "belästigen" muss, jedenfalls nicht so oft.

Danke für alles Developer_X


----------



## Marco13 (11. Nov 2009)

Ohne das jetzt wieder in einen Flamewar oder Developer_X-bashing ausarten lassen zu wollen: DOCH, das wirst du. Zumindest werden auch noch so viele Codesamples dich nicht davon abhalten. Es gibt im Netz eine unerschöpfliche Menge an Beispielprogrammen zu JOGL. Dass sich jemand die Mühe gemacht hat, (vermutlich) speziell für dich ein paar Beispiele zu erstellen, bei denen "Entpacken, Compilieren und Starten" ein hübsches Bildchen auf den Bildschirm zaubert hilft nicht weiter oder ist nur eine Art "Symptopbekämpfung". Vorher war deine Frage "Wie mache ich Texturing?" - Wenn du jetzt ein Beispiel hast, wo eine Textur angezeigt wird, ist deine nächste Frage "Und wie kann ich die Textur jetzt animieren?" - und wenn dort jemand ein glsample0X postet, wirst du das "aufsaugen" wie ein Schwamm, und die nächste Frage stellen: "Wie kann man eine Filmdatei als Textur verwenden" (oder sonstwas) ... und so wird es immer weiter gehen, solange die Fortschritte, die du machst, daraus bestehen, Leute in einem Forum dazu zu bewegen, Lösungen für deine Probleme zu posten, und du nicht (endlich) lernst, Eigeninitiative zu zeigen, im Hinblick auf den Versuch, dir die Fähigkeit anzueignen, dir für solche Probleme _selbst Lösungen zu erarbeiten_. 
Aber vielleicht habe ich ja auch einen vööööllig falschen Eindruck bekommen....


----------



## Spacerat (11. Nov 2009)

Marco13 hat gesagt.:


> Ohne das jetzt wieder in einen Flamewar oder Developer_X-bashing ausarten lassen zu wollen: DOCH, das wirst du. Zumindest werden auch noch so viele Codesamples dich nicht davon abhalten. Es gibt im Netz eine unerschöpfliche Menge an Beispielprogrammen zu JOGL. Dass sich jemand die Mühe gemacht hat, (vermutlich) speziell für dich ein paar Beispiele zu erstellen, bei denen "Entpacken, Compilieren und Starten" ein hübsches Bildchen auf den Bildschirm zaubert hilft nicht weiter oder ist nur eine Art "Symptopbekämpfung". Vorher war deine Frage "Wie mache ich Texturing?" - Wenn du jetzt ein Beispiel hast, wo eine Textur angezeigt wird, ist deine nächste Frage "Und wie kann ich die Textur jetzt animieren?" - und wenn dort jemand ein glsample0X postet, wirst du das "aufsaugen" wie ein Schwamm, und die nächste Frage stellen: "Wie kann man eine Filmdatei als Textur verwenden" (oder sonstwas) ... und so wird es immer weiter gehen, solange die Fortschritte, die du machst, daraus bestehen, Leute in einem Forum dazu zu bewegen, Lösungen für deine Probleme zu posten, und du nicht (endlich) lernst, Eigeninitiative zu zeigen, im Hinblick auf den Versuch, dir die Fähigkeit anzueignen, dir für solche Probleme _selbst Lösungen zu erarbeiten_.
> Aber vielleicht habe ich ja auch einen vööööllig falschen Eindruck bekommen....


Gibt's da 'ne Petition, die man unterschreiben könnte?  --> signed...


----------



## Guest2 (11. Nov 2009)

@ Marco: 
Jap, ich bin Student. 
Als Vertiefungsgebiet hab ich auch noch Computergrafik und so ne kleine Fingerübung kann nie schaden. 


@DevX:
Ein Prof von uns meinte mal, das es eigentlich egal sei ob jemand lernt oder nicht, denn solange man von außen genug Wissen anlegen würde, würde es auch durch die Schädeldecke diffundieren. Es dauerte dann nur etwas länger...

Aus Erfahrung kann ich Dir sagen, dass dies zwar grundsätzlich stimmt, aber "etwas länger" dann durchaus relativ (lange) sein kann. Darum mein Tipp, lies (besser noch bearbeite!) jedes Tutorial das Du in die Finger bekommst!

Von den gl2sample hab ich bisher nur die online die Du auch kennst. Aber in meinem Workspace liegt vermutlich für jedes OpenGL Problem auch irgendwo ein Beispiel, so dass ich bei Bedarf weitere online stellen kann (nichtsdestotrotz, solltest Du Dir das passende Wissen zu den samples aneignen, zur Not Befehl für Befehl hier nachsehen: OpenGL-Funktionsübersicht ? DGL Wiki ). 

(Genaugenommen will ich mich schon seit längern mal hinsetzen und aus meinem Workspace eine JOGL / tutorial / sample / special effects Serie destillieren, allerdings soll da der Schwerpunkt auf OpenGL 3.2 / GLSL 1.5 core liegen. Aber ich befürchte, ehe Du das gebrauchen kannst, musst Du eh noch en "bissel" Grundlagen lernen.)

Gruß,
Fancy


----------



## Marco13 (11. Nov 2009)

Guest2 hat gesagt.:


> @ Marco:
> Jap, ich bin Student.



Meine Frage war in dem Sinne unpräzise gestellt: Es ging nicht um die Frage OB du eines von beidem bist, sondern welches von beidem :bae: 
Ja, so ein paar Snippets basteln ist schön, und nicht zuletzt werden der gelegentlichen "Fingerübungen" bin ich ja auch hier, aber ... wenn so lange so wenig zurückkommt wird's irgendwann frustrierend...


----------

