Ich mache gerade ein Programm mit Partikeln und habe dabei folgendes Problem:
Damit die Partikel richtig gezeichnet werden muss der Tiefen-Puffer deaktiviert sein, wenn ich ihn allerdings deaktiviere dann werden Objekte an Stellen angezeigt wo sie eigentlich gar nicht zu sehen sein sollten.
Kann mir jemand helfen?
ich denke mal das liegt eben am abgeschalteten TiefenBuffer... Denn wenn du diesen deaktivierst und die Partikel z.B. als letztes in der Scene zeichnest, werden sie IMMER alle sichtbar sein...
also wenn davor ne Tür ist, würden die Partikel trotzdem vor der tür sein...
um das zu umgehen gibt es eigentlich (Soweit ich weiß) nur die möglichkeit die Partikel an erster Stelle (bzw da wo es am besten passt) zu rendern...
oder einfach den TiefenBuffer angeschaltet lassen und ne andere lösung finden *g*
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Zu Begin machst du ein
glDepthMask(GL_FALSE);
und nachdem du sie gezeichnet hast machst du ein
glDepthMask(GL_TRUE);
Dadurch verhinderst du, dass sich die Partikel selber verdecken aber so hast du noch die Funktionalitäten des Buffers. Du verhinderst einfach, dass neue Objekte in den Tiefenbuffer geschrieben werden.
Für einfach Aufgaben sollte das voll und ganz ausreichen.
Wenn du aber mit aufwendigerem Blending arbeitest musst du die Objekte von Hand sortieren.
Mitglieder in diesem Forum: 0 Mitglieder und 17 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.