Werden Nachschlagetexturen noch für irgendetwas verwendet?


14

Ich weiß seit nicht allzu langer Zeit (vor 5-10 Jahren?), Dass es beliebt / effizient war, Daten in Texturen auszubacken und dann die Daten aus den Texturen zu lesen, wobei häufig die eingebaute Texturinterpolation verwendet wurde, um eine lineare Interpolation der gebackenen Daten zu erhalten aus Daten.

Jetzt, da die Rechenzeit im Vergleich zur Nachschlagezeit für Texturen günstiger ist, hat sich diese Praxis definitiv verringert, wenn nicht alle zusammen verschwunden sind.

Meine Frage ist, werden ausgeheizte Texturen immer noch für irgendetwas verwendet? Hat jemand Anwendungsfälle für sie in der modernen Architektur? Scheint es wahrscheinlich, dass sie jemals wiederkommen werden? (Sagen wir, wenn sich die Speichertechnologie oder die grundlegende GPU-Architektur ändert)


Das hängt ganz vom Anwendungsfall ab. Stellen Sie sich vor, Ihre Berechnungen dauern eine Stunde. Wäre es nicht schön, eine Lookup-Textur mit den Ergebnissen vorab zu generieren und zur Laufzeit auf Ihrer GPU zu verwenden? Einige einfachere Dinge können heutzutage mit ALU-Befehlen schneller erledigt werden (zum Beispiel bestimmte Farbtransformationen), aber alles, was umfangreiche Berechnungen erfordert, wird mit Lookup-Texturen immer schneller erledigt.
Tara

Antworten:


17

Ja, Lookup-Texturen werden weiterhin verwendet. Zum Beispiel vorintegrierte BRDFs (zum Beispiel für die Umgebungsbeleuchtung) oder beliebig komplizierte Kurven, die auf eine 1D-Textur oder eine 3D-Lookup-Textur für die Farbkorrektur oder eine Rauschtextur anstelle eines PRNG im Shader heruntergebrannt wurden.

ALU ist im Allgemeinen billiger als ein Texturmuster, aber Sie haben immer noch eine begrenzte Menge an ALU pro Frame. GPUs sind gut in der Latenz versteckt und kleine Lookup-Texturen sind wahrscheinlich im Cache. Wenn Ihre Funktion kompliziert genug ist, kann es sich dennoch lohnen, eine Nachschlagetextur zu verwenden.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.