Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Probleme mit Depth-Buffer

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Caran



Anmeldungsdatum: 11.03.2007
Beiträge: 290
Wohnort: Lörrach

BeitragVerfasst am: 06.02.2008, 23:36    Titel: Probleme mit Depth-Buffer Antworten mit Zitat

Hei Forum,
also ich bastle momentan an einer Partikelengine. Allerdings werden manche Partikel falsch dargestellt, wenn sie transparent gezeichnet werden (Blending). Das Ganze Geschehen ist darauf zurückzuführen, dass der Depth-Test transparente Polygone, HINTER schon gezeichneten transparenten Polygonen nicht zeichnet, was ganz schön seltsam aussieht.
Erster Gedanke: Depth-Test ausschalten. Sieht aber auch nich gut aus, da jetzt, hinter Gegenständen gezeichnete Partikel, auch sichtbar sind.

Das ließe sich lösen, indem man einfach den Depth-Test anlässt, das Zeichnen aller transparenten Partikel, NACH dem Zeichnen nicht transparenter Polygone durchführt, und zwar so, dass die Partikel die am weitesten vom Betrachter weg sind zu erst gezeichnet werden.
Allerdings habe ich kein Bock darauf, zu testen welches Partikel, am weitesten von der Kamera entfernt ist, damit die Partikel in der Richtigen Reihenfolge gezeichnet werden. Gibt es denn nicht einen Befehl für OGL, der die Ganze Sache erleichtert?
Danke schonmal.

MfG Caran
_________________
Eine Erkenntnis von heute kann die Tochter eines Irrtums von gestern sein.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
marzec



Anmeldungsdatum: 13.10.2004
Beiträge: 267

BeitragVerfasst am: 07.02.2008, 10:52    Titel: Antworten mit Zitat

Leider nicht. Die von die skizzierte Methode ist der einzige gangbare Weg. Du könntest vll. ein fragment program schreiben, das Pixel mit alpha = 0 erst gar nicht in den depth buffer schreibt, dann ersparst du dir das sortieren.
_________________
Yagl - yet another gameprogramming library
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Caran



Anmeldungsdatum: 11.03.2007
Beiträge: 290
Wohnort: Lörrach

BeitragVerfasst am: 07.02.2008, 12:12    Titel: Antworten mit Zitat

Wie realisiert man so ein fragment Programm?

MfG
_________________
Eine Erkenntnis von heute kann die Tochter eines Irrtums von gestern sein.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
marzec



Anmeldungsdatum: 13.10.2004
Beiträge: 267

BeitragVerfasst am: 07.02.2008, 18:54    Titel: Antworten mit Zitat

sorry, das mit dem fragment programm wird leider auch nicht funktionieren. du wirst über sortierung nicht hinweg kommen.
_________________
Yagl - yet another gameprogramming library
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Caran



Anmeldungsdatum: 11.03.2007
Beiträge: 290
Wohnort: Lörrach

BeitragVerfasst am: 07.02.2008, 20:31    Titel: Antworten mit Zitat

Oh, nagut, dann muss das wohl so gemacht werden...
Trotzdem Danke

MfG Caran

Edit:
Oke jetzt hab ich was programmiert, um die Entfernung zu bestimmen und die Partikel dem entsprechend zu sortieren. War gar nicht mal so schwer wie ich dachte. zwinkern

Nochmal Danke und MFG, Caran
_________________
Eine Erkenntnis von heute kann die Tochter eines Irrtums von gestern sein.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz