Autor Beitrag
Andreas Pfau
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 997



BeitragVerfasst: Mi 10.12.03 21:19 
Hallo,

ich will, grob, gesagt, mit OpenGL eine Art "Konfetti-Regen" rendern. Jeder Konfetti-Partikel ist ein Quad, mit einer Alpha-Textur (Undurchsichtiger Kreis, durchsichtiger Rand). Die färbe ich mit glColor() ein.

Jetzt das Problem: wenn ich ohne Depth-Test arbeite, scheinen die hinten gelegenen Partikel durch die vorderen durch. Wenn ich Depth-Test aktiviere, kommt ein anderes Problem: Das GANZE Quad ist im Z-Puffer, auch der Teil, der Transparent ist! Das bedeutet, wenn der Rand eines der vorderen Partikel über einen der hinteren Partikel ragt, sieht man einen schwarzen Rand (das was an der Textur transparent sein soll ist jetzt schwarz)!

Was kann man da tun? Muss ich wirklich alle Partikel nach /-Position sortieren, oder gibt es auch eine einfache Lösung?

Leider ist mein FTP-Server grade down, ich verscuhe baldmöglichst einen Screenshot einzustellen! Na ja, hier mal eine Skizze:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
      '#####'
      #     #
''####//    #
'#    #/    #
#      #####'
#      #
'#    #'
''####''

# Ränder
' Unsichtbar wegen Alpha
/ Hier wird ein hinterer Partikel vom vorderen verdeckt, obwohl der alpha hat!!!

_________________
Life is a bad adventure, but the graphic is really good!