Shader Nedir?

onurr

Hectopat
Katılım
18 Temmuz 2014
Mesajlar
472
Yer
Adana
Daha fazla  
Cinsiyet
Erkek
Arkadaşlar merhaba,


Youtube'dan bir video izlerken konuşma sırasında shader adında bir kelime geçti. Tek bildiğim ekran kartının bir terimi. Bu shader nedir? Ne işe yarar?
 
Programlanabilir gpularin ortaya cikmasindan sonra hayatimiza girmis bir terim. (daha once silicon graphics'e ait muadilleri vardi). Shaderlar, vertex'lere ya da pixellere hukmetmek uzere yazilan kucuk program parcalaridir.

Cok genel olarak, geometrik yapilar cpu'dan graphics pipeline denen bir yerlere gonderilir, burada oncelikle vertex shaderlar sayesinde vertexlerin (ornegin ucgenin uc kosesi uc vertextir) transformasyonlari, texturekoordinatlari gibi seylerle oynanabilir. Ardindan pixel shader gelir, bu da ekrana cizilen her bir noktanin ozelliklerini degistirme sansi verir bize. Dogasi geregi pixel shader cok daha yogun bir is yapmaktadir, bu yuzden per-pixel diye tabir edilen isler genelde iyi bir ekran karti gerektirir.
 
Son düzenleyen: Moderatör:
Basit olarak ekran kartının içinde shader denen işlem birimleri var. Güncel ekran kartı mimarisi ile bu işlem birimleri genel olarak oyunlarda dokular oluşturmaya yardımcı olmak amacı ile kullanılıyor. Aynı zamanda da FPS'yi belirleyen en önemli etkenlerden birisidir.
 
Sağ olun arkadaşlar. En azından ne olduğunu anladım.

Fakat bunların SM 2.0 ve SM 3.0 modelleri var. Bunlar nedir?
 
SM 2 ve SM 3 arasındaki fark versiyon farklıdır. sayılardan da anlaşılacağı gibi SM 3, SM 2 den daha gelişmiş shader modelidir. Bu versiyon farklılığı sadece yazılımsal değil aynı zamanda da donanımsal farklılıktır.
 
Yanlış anlamadıysam SM 3'ün doku kalitesi SM 2'den daha iyidir o zaman. SM 3 ve SM 2 arasında büyük fark var mı? SM 2 hale kullanılıyor mu? Kullanılıyorsa her halde üst seviye ekran karlarında yoktur umarım.
 
SM 2'den SM 3'e DirectX 9.0c
DirectX 10.x ile SM 4.x'e
DirectX 11.0(güncel olan versiyon) ile SM 5.x'a geçilmiş.
DirectX güncellendikçe SM'de güncelleniyor.(yada tam tersi)
Yani anlayacağın eski DirectX 10.0 destekli bir kart alırsan Shader Model 4.0 olacaktır. Aynı şekilde SM 4.0 olan bir ekran kartını DirectX 11'e güncelleyemezsin çünkü DirectX 11 Shader Model 5.0'a ihtiyaç duyar.
 
Son düzenleyen: Moderatör:
Örnek shader. :)
t-shader.jpg
 

Yeni konular

Geri
Yukarı