Merhaba Arkadaşlar
Blog'um bir aradan sonra tekrar aktiftir.Bu aralar UD(Uzak Diyarlar) projesi süper bir hızla devam ederken zamanım kalınca kendi çapımda bir oyun yapmaya karar verdim ve herkezi eğlendiren bir oyun olmalı dedim.Fizik ! Oyuncular farklı bulmacalar çözsün kendi sahneleri yaratsın e karışık makineler yapsın dedim.Her kesimden ve her yaştan oyuncu ve yapmaya başladım ...
İlk olarak fizik üzerinde çalıştım bir kaç top üzerinde denemeler yaptım görüntüler ;
Oyun Programlama | DirectX | HLSL
Blog'da Ara
23 Kasım 2010 Salı
2 Ekim 2010 Cumartesi
Direct3D Matematik - Matrisler
Matrisler Nedir ?
Matrisler sayıların , değişkenlerin veya parametlerin oluşturduğu dikdörtgen biçimindeki sayı tablosudur.
Biz matrisleri verileri tutması için kullanıcaz.
Örnek bir matris ; 3x2
[ 1 , 7 ]
[ 7 , 7 ]
[ 7 , 1 ]
Aklınızda birşeyler oluşmuştur.
DirectX'de matrisleri böyle tanımlıcaz ;
D3DMATRIX matrixim;
Şimdi matrixleri toplamaya geçelim.
[ 1 , 2 ] + [ 4 , 1 ] = ?
[ 2 , 3 ] [ 2 , 1 ]
Bu işlemi nasıl çözücez derseniz çok basit birbirlerinin yerlerini tutan sayıları toplucaz. Yani ilk matrisin 1x1'indeki sayıyı yani 1'i ikinci matrisin 1x1'indeki 4 ile topluyoruz.
Hemen çözelim ;
[ 1 , 2 ] + [ 4 , 1 ] = [ 5 , 3 ]
[ 2 , 3 ] [ 2 , 1 ] [ 4 , 4 ]
Eğer matriste -'li sayılar varsa yine toplayon ve işaretini şu tabloya göre ayarlayın.
+ - = -
+ + = +
- - = +
- + = -
Bu dersimizde bu kadar :) Bir dahaki dersimizde matrislerle çarpma ve bölmeleri görücez ...
Matrisler sayıların , değişkenlerin veya parametlerin oluşturduğu dikdörtgen biçimindeki sayı tablosudur.
Biz matrisleri verileri tutması için kullanıcaz.
Örnek bir matris ; 3x2
[ 1 , 7 ]
[ 7 , 7 ]
[ 7 , 1 ]
Aklınızda birşeyler oluşmuştur.
DirectX'de matrisleri böyle tanımlıcaz ;
D3DMATRIX matrixim;
Şimdi matrixleri toplamaya geçelim.
[ 1 , 2 ] + [ 4 , 1 ] = ?
[ 2 , 3 ] [ 2 , 1 ]
Bu işlemi nasıl çözücez derseniz çok basit birbirlerinin yerlerini tutan sayıları toplucaz. Yani ilk matrisin 1x1'indeki sayıyı yani 1'i ikinci matrisin 1x1'indeki 4 ile topluyoruz.
Hemen çözelim ;
[ 1 , 2 ] + [ 4 , 1 ] = [ 5 , 3 ]
[ 2 , 3 ] [ 2 , 1 ] [ 4 , 4 ]
Eğer matriste -'li sayılar varsa yine toplayon ve işaretini şu tabloya göre ayarlayın.
+ - = -
+ + = +
- - = +
- + = -
Bu dersimizde bu kadar :) Bir dahaki dersimizde matrislerle çarpma ve bölmeleri görücez ...
Artık DirectX ...
Evet arkadaşlar bi ara verdikten sonra DirectX ile kendimi geliştirmeye karar verdin öncedende çalışmışlığım vardı DirectX ile fakat pek birşeyler koyamamıştım ortaya :) .Öğrendikçe dersler ve örnekler burada olacaktır.
HLSL bıraktım değil HLSL devam.Umarım en iyisi bu olur :)
HLSL bıraktım değil HLSL devam.Umarım en iyisi bu olur :)
25 Eylül 2010 Cumartesi
Topik 1.0


Merhaba arkadaşlar Refleks Oyun Tasarım ekibine ben katılmadan önce yaptıkları eğlenceli bir minik oyunu sizlerle paylaşmak istedim.
Oyun Adı : Topik
Kullanılan Motor : 3D Game Studio A7
Download : http://www.refleks.org/Topik.rar
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
.
Evet effectsiz kodumuz budur
.
Şimdi öncelikle kaplamanın verilerinin tutan yapı burada tex0'dır .
Ve bunun üzerinde oynucaz
. Ö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 ;
Ve şimdi kaplamayı 2 ile çarpalım
.
Basit
Ş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.
Ve bunuda objeye atarsak kaplama üzerine hafif şeffaf bir kırmızı renk gelir
.
Bir dahaki dersimizde zaman kavramını kullanıcaz
Emeğe saygı , anlatım bana aittir.

texture entSkin1; sampler Kaplama1 = sampler_state{ texture=<entSkin1>; }
float4 PikselShader(float2 tex0:TEXCOORD0):COLOR{
float4 Renkler; Renkler = tex2D(Kaplama1,tex0);
return Renkler;
}
technique Teknik1{
pass 0{PixelShader = compile ps_2_0 PikselShader();
}
}
Evet effectsiz kodumuz budur

Şimdi öncelikle kaplamanın verilerinin tutan yapı burada tex0'dır .
Ve bunun üzerinde oynucaz

Ve kaplama verilerini attığımız koda dönelim ;
Renkler = tex2D(Kaplama1,tex0);
Ve şimdi kaplamayı 2 ile çarpalım

Renkler = tex2D(Kaplama1,tex0*2);
Basit

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

Bir dahaki dersimizde zaman kavramını kullanıcaz

Emeğe saygı , anlatım bana aittir.
15 Eylül 2010 Çarşamba
Başarılı bir Water Shader çalışması :)
Yapan arkadaş cidden süper yapmış :) . En yakın zamanda öğrenicem bunları öğrendiğim zaman oyunumuzda böyle bir deniz yaparız :) .
Modellemede yardım etmek ister misiniz :)
Merhaba arkadaşlar RPG oyunumda modellemeci arkadaşlara ihtiyacım var.İlgilenenler varsa bana ulaşırsa mutlu olurum .Eğer talep olmazsa hazır modeller kullanıcam.
İletişim : mert_atagul@mynet.com
İletişim : mert_atagul@mynet.com
Kaydol:
Kayıtlar (Atom)