Ich habe mal irgendwo so einen OpenGL Befehl gefunden, der OpenGL dazu angewiesen hat, die Teile der Szene, die man nicht sehen kann auch nicht zu berechnen. Leider kann ich mich nicht mehr an die URL erinnern und habe die Seite auch nicht mehr gefunden.
Wisst ihr wie der Befehl hieß?
Registriert: Mi Aug 20, 2003 22:26 Beiträge: 38 Wohnort: Dresden (noch)
Also ich wüsste jetzt, dass NVidia-Karten ab der GF3 das automatisch anhand des Z-Wertes machen, aber eben nur auf Pixelebene, was nur den Textureunits etwas Arbeit erspart.
Nennt sich OcculsionCulling.
Daneben gibt es ab OGL 1.1 noch den GL_OCCLUSION_TEST_HP.
Mit dem kannst du prüfen, ob das letzte Objekt was gerendert wurde, sichtbar war, wie weiß ich aber auch nicht so genau.
Statt GL_OCCLUSION_TEST_HP sollte man lieber NV_occlusion_query oder ARB_occlusion_query benutzen. Damit kann man die Anzahl der Pixel, die den Z-Test bestanden haben abfragen. Das lohnt sich z.B. wenn man zuerst die Bounding Box eines komplexen Objektes zeichnet und so testet ob das Objekt überhaupt sichtbar ist, bevor man es zeichnet. Zu der NV Version, die aber auch von fast allen ATI Karten unterstützt wird, gibt es hier auf der Seite auch ein Tutorial.
Mitglieder in diesem Forum: Bing [Bot] und 7 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.