Tag,
ich versuche gerade in OpenGL Texturen zu verwenden. Das: Link funktioniert ja, aber ich weiß echt nich wie ich da mehrere Texturen reinbringen soll.
Danke für jede Antwort.
OpenGL - Texturen?
Du musst dir ein Array erstellen welches jeweils die ID der Textur beinhaltet. Hier im Tutorial (welches übrigens sehr unübersichtlich aussieht, keine Formatierung usw.) wird immer "Tex" als Variable verwendet, welche die Textur beinhaltet. Da es eine Variable ist kann diese auch nur einen Index einer Textur beinhalten. Dimensionier die Variable 10 mal und du kannst 10 fassen. Dazu musst du natürlich ein paar kleine Änderungen im Code vornehmen. Aber wenn du das Grundprinzip verstanden hast sollte das zu machen sein.
Nicht ganz das, was ich eigentlich meinte
Naja, hab mich wohl nicht klar ausgedrückt. Nochmal:
Dass ich das
etc., machen kann, ist mir klar. Ich weiß nur nicht wie ich dann z.b. Textur 1 auf mein erstes Quad und Textur 2 auf mein zweites Quad bringen kann.
Da hab ich gleich noch eine Farbe: Wie kann ich bei der Textur eine Transparenzfarbe festlegen?
Dass ich das
Code: Alles auswählen
Tex = LoadGLTexture("boden.jpg", #TEX_FILTER)
Tex2 = LoadGLTexture("mauer1.jpg", #TEX_FILTER)Da hab ich gleich noch eine Farbe: Wie kann ich bei der Textur eine Transparenzfarbe festlegen?
Mit glBindTexture() wählt man die als nächstes zu verarbeitende Textur aus. Da wählst du dann entweder tex oder tex2 aus und als ersten Parameter GL_TEXTURE_2D.
Die transparente Farbe wird bestimmt dadurch, wie die Maske bzw. die Alphawerte der Textur sind. Wenn du ein Dateiformat verwendest welches 32 bit unterstützt (etwa PNG oder TGA) dann kannst du die Grafik mit Alphakanal abspeichern. Im OpenGL kannst du dann den "Alphatest" aktivieren und alle Transparenzwerte größer X ausblenden lassen. Näheres findest du zum Beispiel hier: http://wiki.delphigl.com/index.php/Tutorial_2D
Die transparente Farbe wird bestimmt dadurch, wie die Maske bzw. die Alphawerte der Textur sind. Wenn du ein Dateiformat verwendest welches 32 bit unterstützt (etwa PNG oder TGA) dann kannst du die Grafik mit Alphakanal abspeichern. Im OpenGL kannst du dann den "Alphatest" aktivieren und alle Transparenzwerte größer X ausblenden lassen. Näheres findest du zum Beispiel hier: http://wiki.delphigl.com/index.php/Tutorial_2D
Zuletzt geändert von Ynnus am 20.11.2005 19:49, insgesamt 1-mal geändert.