1 Ekim 2009 Perşembe

DirectX Nedir ?

Yapmanız gereken ki çoğu oyun kurulumu directx i yükseltir ama size sorarak yapar bunu. DirectX i yükseltmek yada güncellemektir. Eğer güncellemezseniz oyun çalışmayacaktır.Zira Windows 7 de de çoğu kişi directx 11 var kesin 10 ile 9 u da destekliyordur diye düşünür. Yanlış düşünce. Sadece çekirdek yüklenir. Sizin ayrıca DirectX in son dağıtımını yüklemeniz gerekir.Windows ile gelen belki en güzel yazılım: DirectX. Oyunların vazgeçilmez yazılımı...

Evet, Windows ile gelen ve windows un daha fazla kullanılmasınınbelkide en büyük nedenlerinden biridir DirectX. Neden oyunlarınvazgeçilmez yazılımı dedim. Birazdan yeni başlayan kullanıcı olsun,normal kullanıcı olsun, profesyonel pc kullanıcısı olsun sadelikleanlatımdan DirectX in ne olduğunu, ne işe yaradığını ve oyunlarda nedenvazgeçilmez bir Api(Application programming interface - UygulamaProgramlama Arayüzü) olduğunu öğreneceksiniz.

DirectX nedir?

Microsoft'un Oyun programcıları için geliştirdiği bir yazılımdırDirectX. Kısaca Oyun geliştiren firmaların büyük bir derttenkurtulmalarını sağlamıştır. Dert derken?Şöyle ele alalım DirectX in asıl amacı Oyunlardaki; Grafik, Ses, Oyun Kontrolü(Klavye,Mouse, Joistik), Ağ bağlantısı gibi işlemleri kendi üzerine alıpoyun geliştirene sadece Grafik detaylarını, sesleri(oyun içindekisesleri oyun geliştirici hazırlar DirectX oynatır) vs gibi işlemler ileilgilenmesini sağlar. Devrik bir cümle oldu basitleştirelim.Oyungeliştiren eğer DirectX olmasaydı Her çeşit ekran kartı için özel kodyazacak, bunları deneyecek, hataları bulacak... uzar gider di bu. AmaDirectX ne yapıyor. Oyun geliştirene: "Al arkadaşım bak benim bu buyeteneklerim seni bir çok dertten kurtaracak işini hızlandıracak."diyor. Nedir mesela? Mesela: Grafikleri oluşturan yazılımapisini DirectX üstleniyor ve programcı çok az uğraşla directXdestekleyen ekran kartlarında oyunu rahatlıkla çalıştırıyor. Sadecegrafik değil bilgisayardaki diğer donanımlarıda algılar DirectX.Klavye, mouse, ses kartı, ekran kartı, işlemci, harddisk. KısacaDirectX i Oyunların Windows u olarak düşünün. Nasıl biz windows udonanıma hükmetmek için kullanıyorsak Oyunlar da DirectX'i donanımahükmetmek için kullanıyor. Şimdi DirectX i açalım tamamen:

DirectX Ne zaman çıktı?

Microsoft DirectX i 1995 Yılında Windows NT 4.0 ve Windows 95 ilepiyasaya sürüyor. 1. versiyon olarak çıkıyor fakat Microsoft versiyonolarak 4. major versiyon olarak görünüyor.
Ta ki Windows Vista ilegelen DirectX 10 ile bu versiyon 6 oluyor. Bu 4. versiyon ile 6.versiyon kafanızı karıştırmasın Asıl versiyon :1, 2, 3,..11 olanversiyonlar bizi ilgilendiren ben kısa açıklama geçtim ;)
Evet ilk versiyon çıktığında pek rağbet görmedi. 1996 yılında çıkan 2.versiyon ile birlikte 3. parti uygulamalar da directx i kullanmaya başlayınca directX yavaş yavaş meşhur olmaya başladı.
1996 yılındayapılan Bilgisayar Oyunu Geliştiriciler Konferansında(CGDC) MicrosoftunDirectX ile yaptığı şovda üç boyutlu aslan gösterimi ile dikkatleri üzerine çekti.
1996 yılında art arta 5 sürüm çıktı.
DirectX 2, 2a, 3, 3a, 3b olarak. Her sürümde tutarlılık ve yeni 3 boyutlu efectler ve bilgisayar donanım parçalarına uyumluluk arttırıldı.
4.sürüm hiç başlatılmadı direk 5. sürüme atlandı.
1997 yılında Windows NT5.0 için beta olarak başladı. Kararlı sürümü 5.2, 5 Mayıs 1997 deWindows 95 için,
25 Haziran 1997 de Windows 98 ilk sürüm için yayınlandı.
5. sürüm Windows NT 5 ile birlikte 16 Temmuz 1997 de çıktı.
5.2 sürümü Windows 95 için 5 Mayıs 1998 de çıktı.
5.2 sürümü Windows 98 için 25 Haziran 1998 de çıktı.
6. Sürüm ile directx daha yaygın kullanılmaya başladı:
6. sürüm Windows CE ile birlikte 7 Ağustos 1998 de çıktı.
6.1 Güncellemesi 3 Şubat 1999 da çıktı.
6.1a Windows 98 SE(İkinci windows 98 sürümü) ile 5 mayıs 1999 da sürüldü.
7. sürüm Windows 2000 ile 17 Şubat 2000 de sürüldü.
7.0a sürümü 2000 yılı içinde güncelleme olarak sürüldü.
7.1 sürümü Windows ME(Milenyum Sürümü) ile 14 Eylül 2000 de sürüldü.
8. sürüm güncelleme olarak geldi.
8. sürüm 12 Kasım 2000 de çıktı.
8.0a sürümü windows 95 için desteklenen son sürümdür. 5 Şubat 2001 de çıktı.8.1: Evett. Bu sürüm Windows XP, Windows Server 2003 ve XBox ile sunulan 25 Ekim 2001 de sürülen sürümdür. 8 Kasım 2001 de aynı sürümün Windows 98,Me, 2000 için kullanılan versiyonu sürüldü.
8.1a Bu sürümde d3d8.dll (DirectX3D sürümü güncellendi) 2002 yılı.8.1b bu sürümde Windows 2000 için DirectShow güncellemesi sunuldu 25 Haziran 2002.8.2 8.1b sürümüne ek DirectPlay özelliği eklendi. 2002 yılı içinde.veee;DirectX 9 ilk sürüm 12 Aralık 2002 de sürüldü.
Sırasıyla;
9.0a 26 Mart 2003 te,9.0b 13 Ağustos 2003 te,
Ve en sonunda DirectX 9.0c sürümü Windows XP Services pack 2 ile:6 Ağustos 2004 te sürüldü.(Windows Server 2003 sp1, r2 ve XBOX 360 için)Bu directX sürümü her yönden bir çok yenilik getirmiştir ve şuan en çok kullanılan directx sürümüdür.
9 Ağustos 2005 yılında 64 bit sürümü çıkartılmıştır.13 Aralık 2005 yılından itibaren directx 9.0c güncellemeleri artık Windows 98, ME, 2000 sürümlerine desteği kesmiştir ve sürüm yükseltimi durdurulmuştur.2006 Yılının başında Windows Vistada Resmi olarak tamamen entegre edilmiş şekilde bulunmaktadır. Ve güncellemelerde hala directx 9 sunulmaktadır.
10 sürüm: Resmi olarak sadece Windows Vistada çalışmaktadır. Vista altı sürümlerde İşletim sistemlerinin çekirdeği eski olduğundan bir çok directx özelliğini kaldıramamalarına sebeb yükseltme verilmemiştir. Bu cümle devrik oldu. Şöyle;Windows Vista da çekirdek sıfırdan yazılmıştır. Vista çevresel donanıma, çok çekirdekli işlemcilerin gücüne tamamen hükmetmektedir. Vista öncesi işletim sistemleri çoklu çekirdekleri tam anlamıyla kullanamadıkları için ve yapıları eski olduğundan DirectX 10 çalışmamaktadır.
Heh şimdi oldu.30 Kasım 2006 da Windows vistaya dahil olmuştur.(Vistanın çıktığı tarih).Bir çok yenilikle gelmektedir. En büyük yeniliklerinden biri DirectX Compute yani ekran kartına işlem gücü yükleme özelliği. (Bir sonraki makalede anlatacağım uzun bir konu). ve Major versiyon 6. sürüme yükseltilmiştir. 10.1 sürümü Windows Vista sp1 ile 4 Şubat 2008 de sürülmüştür. Nvidia kartlarında hiçbir zaman bu sürüme destek vermemiştir.ve 11. sürüm.Bu sürüm Windows 7 ile birlikte sürüldü. 22 Temmuz 2009.11 sürümde 10. sürümü içine alarak güçlü özellikler ile karşımıza çıkmaktadır.Ayrı bir makaleye saklamak istiyorum.

DirectX'i Apilerini Açalım...

Apileri kısa anlatacağım her birini açsak birer cep kitapçığı çıkar bu yüzden kısa geçeceğim.

Direct3D

Oyunların, Modelleme programlarının 3 boyutlu modellemesi kullanabilmesi için ekran kartı ve işlemciyi kullanarak donanım hızlandırması sağlayan api dir. Olmazsa olmaz bir programlama apisidir. Mesela oyunların tam ekran çalışmasını, oyundaki kaplamaların 3 boyutlu görünmesini, performans lı çalışmasını bu api sağlar.

Her directX sürümünde güncellenir ve isim değiştirir:

DirectX9 da d3d9,.dll
DirectX10 da d3d10.dll
DirectX11 de d3d11.dll gibi isimler alır.
DirectX 9 da devrim atlamıştır.
Windows Sürücü Modellemesini kullanarak(Windows vista ile) daha canlı ve kaliteli görüntüler elde etmektedir.10 versiyonda doku kaplamalarındaki boyutlar daha da geliştirilmiş ve 11. versiyonda multithreading, Tesselation, ComputeShaders gibi bir çok yenilik getirmiş, kazanmıştır.

DirectPlay

Oyunlara ve diğer directx kullanan yazılımlara ağ bağlantısı özelliği kazandır. Mesela Counter Strike ı ele alalım. Çoklu ağ oyunlarında Oyunu geliştiren programcıya bu api kullanımı ile daha rahat ve kullanışlı oyun yazmasını sağlar.


DirectPlay

Oyunlara ve diğer directx kullanan yazılımlara ağ bağlantısı özelliği kazandır. Mesela Counter Strike ı ele alalım. Çoklu ağ oyunlarında Oyunu geliştiren programcıya bu api kullanımı ile daha rahat ve kullanışlı oyun yazmasını sağlar.

DirectSound

Oyun içindeki ses dosyalarını oynatır. Ses dosyalarına; Echo, 3 Boyutlu efect, Dalgalanmalar gibi pek çok özellik katar. Ayrıca yazılmasına gerek yoktur. Oyun programcısına büyük avantaj sağlar. En büyük artısı ses kartlarındaki özellikleri oyuna yansıtır mesela dolby digital destekli surround bir ses kartınız var ve oyun bu tip bir kart ile daha gerçekçi sesler sağlar bu işi işte DirectSound sağlar.

DirectMusic

DirectSound ile birlikte çalışır. Mesela en basit yanı ağ bağlantılı oyunlarda ses iyileştirmesi yapar. World Of Warcrafttaki canlı konuşmalar mesela. Ses ve müzikleri alıp kalitesini bozmadan ağ hızınıza bağlı olarak sıkıştırıp diğer oyunculara gönderir.


DirectDraw2

Boyutlu grafikler için donanım hızlandırması sağlar. En iyi örnek Photoshop taki grafik işlemesi. Direct3D den en büyük farkı budur.2 Boyutlu grafik komutları işler. İşlemci, Ekran kartı, Ram, Video Ram bunları aktif kullanarak daha hızlı sonuç elde edebilirsiniz. Çoğu video kodeği bu apiyi kullanır.

DirectX Güncellemeleri Nedir?

Oyun geliştirici firmalara Microsoft DirectX i kullanmaları için Yazılım geliştirme kiti(SDK) sağlar. ve her SDK da yeni bir directX güncellemesi içerir. Normalde DirectX windows a gömülü geldiğini sanarız. Hayır. DirectX durmadan geliştirildiği için sadece çekirdek windows a gömülü gelir.

Mesela A firması Microsfttan directx in en son sdk sını indirip oyun geliştirdi ve bunu dağıtıma sundu. Mesela DirectX 10 kullanan bir oyun.Sizde Windows Vista var diyelim ekran kartınız dx10 u destekliyen güncel bir kart.

Oyunu kurdunuz ve açtığınızda Bir hata mesajı:"Direct3DXX.dll bulunamadığından program çalıştırılamadı!" bu hata mesajında Oyun geliştirine firma en son directx i kullandığı için ve sizde yüklü olmadığından dolayı hata alırsınız.
Yapmanız gereken ki çoğu oyun kurulumu directx i yükseltir ama size sorarak yapar bunu. DirectX i yükseltmek yada güncellemektir. Eğer güncellemezseniz oyun çalışmayacaktır.Zira Windows 7 de de çoğu kişi directx 11 var kesin 10 ile 9 u da destekliyordur diye düşünür. Yanlış düşünce. Sadece çekirdek yüklenir. Sizin ayrıca DirectX in son dağıtımını yüklemeniz gerekir.
Yapmanız gereken basit bir arama yada şu link:Arama şu: Google ı açıp. "DirectX Latest Download" yazdığınızda Microsoftun sayfası çıkacaktır aşağıdaki örnek link gibi:

http://www.microsoft.com/downloa%20...%20e-b7b1-442d8712d553

Download a basıp indirmek ve kurmaktan ibarettir.Bu linkte ise DirectX in hangi işletim sistemlerine yüklendiğini gösterir:



http://www.microsoft.com/downloads/details.aspx?FamilyID=2DA43D38-DB71-4C1B-BC6A-9B6652CD92A3&displaylang=en#Requirements#Requirements koyu ek işletim sistemlerine yönlendirir sizi.

Kaynaklar:

http://en.wikipedia.org/wiki/DirectX
http://en.wikipedia.org/wiki/Direct3D
http://en.wikipedia.org/wiki/DirectPlay
http://en.wikipedia.org/wiki/DirectSound
http://en.wikipedia.org/wiki/DirectDraw
http://en.wikipedia.org/wiki/DirectMusic
http://www.msdn.com/
http://www.microsoft.com/

NOT:

Serdar Gökcen ( Alıntıdır )




Jack and Diane (Live) - Stephen Kellogg and the Sixers

Hiç yorum yok:

Yorum Gönder

İyi günler