Blog'da Ara

18 Eylül 2010 Cumartesi

HLSL (High Level Shader Language) - Ders 2 Kaplamalar

Merhaba arkadaşlar geçen dersimizde effectsiz bir HLSL kodu yazmıştık bu sefer bir kaç effect vericez objelerimize önce ilk dersimizi hatırlayalım ve ordaki kodumuzu alalım Smile .


texture entSkin1sampler Kaplama1 sampler_statetexture=<entSkin1>; }

float4 PikselShader(float2 tex0:TEXCOORD0):COLOR{
float4 RenklerRenkler tex2D(Kaplama1,tex0);
return 
Renkler;
}
technique Teknik1{
  
pass 0{PixelShader compile ps_2_0 PikselShader();
}

Evet effectsiz kodumuz budur Smile .

Şimdi öncelikle kaplamanın verilerinin tutan yapı burada tex0'dır .

Ve bunun üzerinde oynucaz Smile . Öncelikle basitçe kaplama sayımızı 2 katına çıkaralım genellikle çim vs. gibi textureler çoğaltılır.

Ve kaplama verilerini attığımız koda dönelim ;


Renkler tex2D(Kaplama1,tex0); 

Ve şimdi kaplamayı 2 ile çarpalım Smile .


Renkler tex2D(Kaplama1,tex0*2); 

Basit Big Grin Şimdi bunu objeye uygulayıp çalıştırırsak iki kat texture çıkar ortaya şimdi ise daha çok işe yarar bir konuya gelelim ve objemizin kaplamasına renk verelim .

Renk vermek için RGBA (Red,Green,Blue,Alpha) kullanıcaz ve float4 ile tanımlıcaz.Renkleri kaplamaya atmak için renkleri RGBA'yı kaplamayla çarpıyoruz.


Renkler tex2D(Kaplama1,tex0)*float4(1,0,0,0); 

Ve bunuda objeye atarsak kaplama üzerine hafif şeffaf bir kırmızı renk gelir Smile.


Bir dahaki dersimizde zaman kavramını kullanıcaz Smile

Emeğe saygı , anlatım bana aittir.

Hiç yorum yok:

Yorum Gönder