Modern GPU'larda Kullanılan
Shader'ların İsimleri ve
Görevleri
SHADER, programlanabilir GPU’ların
ortaya çıkmasından sonra hayatımıza giren bir terimdir. Shaderlar, vertex'lere ya da pixellere hükmetmek üzere yazılan
küçük program parçalarıdır.
Çok
genel olarak, geometrik yapılar CPU'dan graphics pipeline denen bir yerlere
gönderilir, burada öncelikle vertex shaderlar sayesinde vertex’lerin
transformasyonları, texture koordinatları gibi şeylerle oynanabilir. Ardından
pixel shader gelir, bu da ekrana çizilen her bir noktanın özelliklerini
değiştirme şansı verir bize. Doğası gereği pixel shader çok daha yoğun bir iş
yapmaktadir, bu yüzden per-pixel diye tabir edilen işler genelde iyi bir ekran
kartı gerektirir.
VERTEX (TEPE) SHADER
Grafik işlemcisine verilen her
tepe noktası için bir defa çalıştırılır. Bu işlem, tepe noktasının 3 boyutlu
pozisyonun ekranda gözükecek 2 boyutlu koordinatına çevrilmesi için yapılır.
Tepe tarayıcısı pozisyon, renk, doku koordinatları gibi özellikler üzerinde
işlem yapabilirken yeni bir tepe noktası yaratamaz. Bu tarayıcının çıktısı bir
diğer tarayıcıya aktarılır,
GEOMETRY (GEOMETRİ) SHADER
Herhangi bir ağ üzerindeki tepe noktalarını silebilir veya
yenilerini ekler. Geometrik tarayıcılar, var olan ağa hacimsel detay kazandırmak
içinde kullanılabilir ki bunu CPU ya yaptırmak ekstra yük getirecektir.
PİXEL (NOKTA) SHADER
Her bir noktanın(pixelin) renk
değerini hesaplarlar. Buraya girdiler, grafik işhattına giden poligonları
dolduran ızgara ünitesinden gelir. Nokta tarayıcılar genellikle ışıklandırma
efektleri, pütür kaplama veya ton ayarı için kullanılır.
Hiç yorum yok:
Yorum Gönder