Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.040 Beiträge
 
Delphi 12 Athens
 
#6

AW: GLScene: Problem mit Alpha bei einem TGLPolygon

  Alt 25. Okt 2012, 12:24
Bei der Tiefensortierung muss ja eine Reihenfolge der transparenten Objekte hergestellt werden. Dazu wird mangels brauchbarer Alternative der Abstand des Schwerpunkts zur Kameraposition verwendet. Dadurch kann es passieren, daß ein Objekt, das eigentlich hinter einem anderen liegt, als davor einsortiert wird, weil die Schwerpunkte eben ungünstig liegen. Beim Zeichnen wird die Z-Position (Tiefe) aber pixelgenau berechnet. Wird nun das hintere Objekt später als das vordere gezeichnet, liegen die Z-Positionen seiner Pixel hinter den aktuellen Pixeln (von dem vorderen Objekt) und werden somit nicht gezeichnet. Als Ergebnis hat man in dem Bereich dann ein transparentes vorderes Objekt, aber das hintere ist dadurch nicht sichtbar.

Du kannst ja mal probeweise den DepthTest abschalten und das Ergebnis anschauen - vielleicht dient das etwas dem Verständnis.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat