![]() |
openGl Transparenz und Drehung
Hallo zusammen,
im Moment arbeite ich mich gerade in openGl ein. Dabei habe ich eine Frage zur Transparenz. Wenn ich z.B. einen Würfel aus transparenten Flächen zusammensetzte, kommt es darauf an in welcher Reihenfolge die Flächen im Programm erzeugt werden, damit die Transparenz auch wirksam wird. Das hab ich verstanden und es klappt auch. Wenn ich nun den Würfel per Programm drehe, ist die im Programm vorhandene Reihenfolge der Flächenerstellung aber nicht mehr „richtig“, d.h. ich bekomme Flächen die andere Flächen überdecken. Bietet openGl hiefür eine Automatik oder muss ich bei Drehungen die Flächenlage (im Raum) ständig überwachen? Ich glaube, das könnte bei beliebigen 3D Drehungen etwas unübersichtlich werden. |
AW: openGl Transparenz und Drehung
Zitat:
Wenn Durchdringungen vorhanden sind bzw genau rendern willst, mußt Du auf Shader zurückgreifen "Dual Depth Peeling". Guck Dich mal auf ![]() Guck auch mal nach meinen Beiträgen, da habe ich so einen Shader für Delphi mal erstellt (also von NVidia übernommen). Einen Renderdurchlauf für die einfache Darstellung kannst Du bei mir auch finden. |
AW: openGl Transparenz und Drehung
Ansonsten gäbs auch noch den Weg, einen Z-Buffer (Depthbuffer, Tiefenpuffer) zu nutzen. Die werden auch gleich direkt von den GraKas harwaremäßig unterstützt, und müssen i.A. nur erstellt und parametriert werden.
|
AW: openGl Transparenz und Drehung
... erstmal vielen Dank, ich hab schon mal ein wenig
nachgelesen. Allerdings steht am Wochenende erstmal eine große Familienfeier an. Am Montag sehen wir weiter. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz