ich versuche mich gerade wieder ein mal an einem kleinen Spielchen mit nicht sehr guter Grafik. Bis jetzt habe ich alle Probleme nach der Zeit ausschalten können aber ich bin nun an einem Punkt angelangt wo ich nicht mehr weiterweiß:
Ich lade meine Texturen mit glaux (= bmp).
Ich lade eine Boden-Textur und eine Schiff-Textur.
Wie kan ich die Schiff-Textur so transparent machen, dass alles was schwarz ist, durchsichtig ist?
Beim Schreiben dieses Texes fällt mir gerade ein...
ich meine ich hätte mal hier oder wo anders gelesen, dass man das mit alpha-schon_in_der_textur_vorhandenen-texturen macht?
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Du musst dazu ein Format nutzen das dir nen Alphakanal anbietet (TGA, PNG, BMP auch aber nicht in allen Programmen) und dort legst du dann im Alphakanal die transparenten Bereiche ab.
Nun lädst du diese Datei und übergibst diese samt Alphakanal an die OpenGL (also RGBA), aktivierst dann den Alphatest, und schon sind alle als transparent markierten Bereiche durchsichtig. Wie genau das geht wurde hier im Forum schon diverse Male erwähnt, genauso wie in meinem 2D-Tutorial.
Registriert: Do Nov 20, 2003 19:52 Beiträge: 48 Wohnort: Tillingen bei Chemnitz
Als Alternative könntest du auch die glBitmap.pas (ist im SDK dabei) als Loader verwenden, da gibts eine Funktion, welche einer Textur beim Laden einen Alphakanal anhand eines Farbwertes verpasst. Die Textur kannst du dann genauso verwenden, als hätte sie einen 'echten' Alphakanal.
_________________ ...die Idee ist gut, doch die Welt noch nicht bereit...
Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.