gl: blend-problems
-
ich schreibe momentan ein Ballerspiel in dem halbtransparente Mauern (alias Fenster - gg) vorkommen. Problem: Wenn mehrere transparente Mauern übereinanderliegen, kommmt es zu Grafikfehlern, das aber auch nur in einer Richtung, also wenn die zuerst gezeichnete Mauer VOR der danachgezeichneten liegt.
Dazu hab ich ma gelesen, man müsste erst alles nicht transparente und dann alles transparente von hinten nach vorne sortiert zeichnen lassen - geht das nich auch anders? So wie ich das sehe, müsste man doch nur verhindern, dass die Transparenten Dinger in den Depthbuffer schreiben, damit sie nicht andere Objekte fehlerhafterweise verdecken. Kann man das nicht unterdrücken? Was ich also suche ist sowas wie:glDisable( GL_WRITE_IN_DEPTHBUFFER );
gibts das irgendwie?Achso, ähhm: Depthtest müsste aber trotzdem anbleiben, weil sonst die transparenten Mauern auch hinter undurchsichtigensichtbar wären.
Für kompetente Hilfe sehr dankbar, greetz by BlAlB
-
hmm..
einfach den GL_DEPTH_TEST für das Zeichnen deaktivieren und anschließend wieder aktivieren?
-
http://www.google.de/search?hl=de&q=opengl+depth+read-only&btnG=Google-Suche&meta=
Ersten Link wählen.
Auf Seite 10 (Folie 19) scrollen...
volkard aus Darmstadt grüssen.