Culling-Verfahren

Culling logo

Culling, in das Deutsche übersetzt, bedeutet so viel wie „auslesen“ oder „ausmerzen“. Man meint im Zusammenhang mit der Computergrafik damit, dass Geometrie bzw. Dreiecke, die vom Betrachter nicht gesehen werden können, nicht dargestellt werden. Dies ist sehr wichtig um die Performance, hier also die Bildwiederholrate, zu maximieren. Im besten Fall sollten die Techniken output sensitive, also Ausgabe berücksichtigend sein. Das heißt die Laufzeit der Algorithmen sollte proportional zur Anzahl der sichtbaren Objekte sein.

Dabei gibt es unterschiedliche Ansätze und Techniken um dies zu realisieren. Man unterscheidet grundlegend zwischen drei übergeordneten Arten von Culling, die sich jeweils um verschiedene Bereiche in der Szene kümmern. Backface Culling bezeichnet das Auslesen von Dreiecken, die nicht zum Betrachter zeigen und somit nicht gesehen werden können. Beim View Frustum Culling werden Dreiecke ausgelesen, die nicht im Sichtfeld des Betrachters liegen, also nicht da, wo er gerade hinschaut. Und zuletzt das Occlusion Culling, welches sich um Dreiecke kümmert, die von anderen Dreiecken verdeckt werden.

Dieses Proseminar erklärt und beschreibt das Culling-Verfahren, die dazu benötigten Datenstrukturen und die Anwendungen genauer.

Inhalt

  • Datenstrukturen
    • Räumliche Datenstrukturen
    • Datenstrukturen im screen-space
  • Culling Techniken
    • Backface Culling
    • Detail Culling
    • View Frustum Culling
    • Occlusion Culling
  • Occlusion Culling
    • Kategorisierung der Occlusion Culling Techniken
    • Portal Culling
    • Hardware Occlusion Queries
    • Software Rasterisierung
    • Occluder Fusion
  • Culling in modernen Engines

Literatur

Bildquellen