Frage von Boomigaard,

OpenGL transparente Texturen Cpp

Mein Problem: Ich möchte einen Chat in mein eigenes PC-Spiel einprogrammieren und hab mir schon einmal Texturen für die Buchstaben gemalt. Aber wie schaffe ich es nun, dass die in Gimp transparenten Pixel nun auch im Spiel transparent werden??? Ich möchte nicht, dass nur schwarze oder nur weiße Pixel transparent werden, da ich die Technik später noch für Fensterscheiben verwenden möchte. Ich benutze OpenGL in C++ und für das Laden der Texturen verwende ich die SOIL Bibliothek. Ich denke mit glEnable(GL_BLEND) könnte man was machen, aber WIE? Oder gibt es noch andere Möglichkeiten, evtl SOIL Funktionen, die eine Textur mit Transparens lädt?

Danke für Antworten!!!

Antwort von Kalaeido,

Hallo,

das ist alles eine Frage des Blendmode bei OpenGL. Sofern du hier die Textur als 32bit ARGB geladen hast (das solltest du vorher sicherstellen) kannst du den Blendmode auf "SrcAlpha, OneMinusSrcAlpha" setzen. Dies bewirkt, dass der transparente Rand um die Buchstaben weggeblendet werden. Durch das setzen von glColor kannst du ausserdem die Schriftfarbe ändern.

Frohes Schaffen

Kommentar von Boomigaard,

O, ja genau, war inzwischen selbst drauf gekommen, trotzem danke.

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten