GPU Shaderları 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.

Yorumlar

Popüler Yayınlar