ROZDZIAŁ DZIEWIĄTY: Shadery i algorytmy renderingu 301
do obsługi procesów potrzebnych do wyświetlania grafiki w czasie rzeczywistym. Procesor graficzny odpowiedzialny jest za grafikę interaktywną, począwszy od gier komputerowych do cieniowanych okien widokowych programów 3D.
GPU w najnowszych kartach graficznych jest elastycznym, programowalnym układem, więc niektóre aplikacje graficzne wykorzystują go w celach innych niż gry komputerowe. GPU może być wykorzystany do renderingu sprzętowego, interaktywnych podglądów czy sprzętowej akceleracji programowych procesów renderingu.
Rendering sprzętowy polega na wykorzystywaniu obrazów generowanych przez kartę graficzną jako ostatecznych renderingów.
Karty graficzne zaprojektowane są do generowania obrazów w czasie rzeczywistym na potrzeby grafiki interaktywnej. Jeśli uwolni się je od ograniczenia polegającego na konieczności renderowania od 30 do 60 klatek na sekundę, karty graficzne są w stanie generować obrazy wyższej jakości niż te, które możemy oglądać w grach komputerowych. Co więcej, sprzętowo wyrenderowane obrazy mogą zostać użyte jako warstwy czy przebiegi w kompozycji wieloprzebiegowej.
Obecnie rendering sprzętowy używany jest na potrzeby wstępnej wizualizacji i testowych renderingów animacji bądź symulacji, ale nie zapewnia jakości wymaganej przez telewizję czy kino.
Akceleracja sprzętowa oznacza rendering za pomocą oprogramowania, które wykorzystuje moc obliczeniową procesora graficznego w celu przyspieszenia pewnych operacji. Przyspieszanie renderingu przez GPU nie oznacza wcale godzenia się na niższą jakość renderingu. Oznacza to tylko, że GPU jest jednym z procesorów wykorzystywanych w obliczaniu koloru piksela podczas wysokiej jakości renderingu programowego. Akceleracja sprzętowa wymaga GPU, ale używa go selektywnie, tylko w pewnym rodzaju obliczeń.
W momencie pisania tej książki akceleracja GPU jest techniką implementowaną lub rozważaną do implementacji przez większość rendererów z górnej półki. Jest ona nadzieją na pełniejsze wykorzystanie