Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Mi Jul 16, 2025 12:01

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 2 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Di Sep 19, 2006 23:00 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Sep 01, 2006 08:22
Beiträge: 26
Wohnort: Frauenfeld / CH
Hallo,
erst dacht ich es wäre was einfaches, aber langsam werd ich verrückt.

Ich habe ein 2D Anwendung wo auch blending und halbtransparente Texturen verwendet werden. Für bestimmte Formen möchte ich nun eine Kantenglättung machen. Dazu generiere ich eine Textur mit dem Alphakanal. Soweit so gut.
Nun aber das Problem:
Ich hab eine beliebige Textur welche gekachelt auf eine bestimmte Fläche (sagen wir einen Kreis) gezeichnet wird. Die Textur wird jetzt natürlich als Quadrat gezeichnet. Mit meiner seperaten Alphakanal-Textur möchte ich nun sagen welcher Teil der beliebigen Textur wie stark gezeichnet wird.

Meine erste Idee war eine Textur mit den Farbinformationen und selbsterstelltem Alphakanal zu mischen. Dies ist jedoch nicht optimal da ich dann nicht mehr so flexibel mit dem Aussehen bin. (Und die Textur grösser als meine Bildschirmfläche sein soll)

Also habe ich es auf verschiedene Arten mit blending und glColorMask versucht, aber irgendwie funktioniert es nicht. Mit dem Blending kenne ich mich noch nicht so gut aus, glColorMask hab ich noch gar nicht eingesetzt. Ob es mit einem Stencilbuffer (kann der Abstufungen machen?) funktionieren würde weiss ich nicht, der scheint doch etwas komplizierter zu sein.

Danke bereits im voraus.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Sep 26, 2006 20:45 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Jun 20, 2003 13:59
Beiträge: 134
OK wenn ich dich richtig verstanden habe hast du einer Textur einen Alphakanal mit Hilfe eines Graustufenbildes verpasst und willst diese jetzt nur noch "Blenden". Richtig?

Die Funktion die du suchst dürfte in etwa so aussehen:

Code:
  1. glblendfunc(GL_ONE_MINUS_SRC_ALPHA, GL_SRC_ALPHA);


Je heller ein Pixel in deinem Graustufenbild ist umso durchsichtiger wird deine Textur an dieser Stelle

_________________
ghost-site.de


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 2 Beiträge ] 
Foren-Übersicht » Programmierung » Einsteiger-Fragen


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 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.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.007s | 14 Queries | GZIP : On ]