Windows kullanıcıları, sistem içinde birçok terimle karşılaşmaktadır. Kullanıcılar, bu sistem terimlerinin bazılarına aşinayken bazılarına aşina olmama ihtimalleri vardır. Directx de Windows işletim sisteminde yer alan bir terimdir. Peki DirectX nedir?
Birçok kişi, bilgisayar üzerinden oyun oynamaktadır. Oyun oynarken de bu kullanıcıların bilgisayarlarının bazı teknik gereksinimlerini bilmeleri şarttır. DirectX özelliği de özellikle oyuncuların bilmeleri gereken bir özellik olarak karşımıza çıkıyor. Biz de bu yazımızda DirectX nedir başta olmak üzere DirectX ile ilgili merak edilen sorulara cevap vermeye çalışacağız.
İçindekiler
DirectX Nedir?
DirectX, 1995 yılında Windows 95 ile teknoloji kullanıcılarının hayatlarına girmiştir. Microsoft DirectX, uygulama programlama arayüzü (API) koleksiyonu olarak geçmektedir. Bu arayüzün amacı multimedya, oyun programlama ve videonun gerekli olan görevlerini gerçekleştirmektir. Bundan dolayı DirectX; ses kartı, video kartı ve bellek gibi donanım bileşenlerin erişim sağlamaktadır.
DirectX, ilk kez çıktığında oyun geliştiricilerinin düşük seviyede olan donanım özelliklerine erişim sağlamalarına ve oyun üzerinde değişiklik yapmalarına olanak sağlamıştır. Bundan dolayı bu arabirim, oldukça önemli bir göreve sahip.
DirectX olmadan önce kullanıcılar, MS-DOS üzerinden işlemlerini yapabiliyorlardı. DOS ile oyunlardaki ekran kartlarına ve ana karta erişim vardı. Değişiklik yapmak için de yapılandırma dosyasını doğrudan düzenleme olanağı vardı. Ancak Microsoft, güvenlik nedeniyle düşük seviyeli donanıma erişmeyi kısıtlamıştı. Bu kısıtlama da oyunların düşük seviyeli donanım özellikleriyle etkileşime girmeyeceği anlamına gelmektedir. Microsoft, bu erişimi kolaylaştırma amacıyla DirectX’i geliştirdi.
DirectX’in Tarihi
Microsoft, 1994 yılının sonunda Windows 1995 işletim sistemini oluşturmaya hazır durumdaydı. Windows 95 işletim sistemindeki en önemli özelliklerden biri, programların üzerinde değişiklik yapma imkanının olmasıydı. Oyun geliştiricileri, MS-DOS’ta yer alan oyunların Windows 95’e getirilemeyeceğini söylediler. Daha sonra uyumlulukla ilgili sorun olduğu ortaya çıktı. Hatta başlarda bir oyun üzerinden WinG adında bir arayüz test edilmeye başlandı. Ancak geliştiriciler, başarısız bir sonuçla karşılaştılar.
Bundan dolayı oyun geliştirmeyle ilgili bazı çalışmalar başlamıştır. Kısa süre içinde ilk uygulama programlama arayüzü (API) seti gelişmiştir. Bu set; SDK (Yazılım Geliştirme Kiti), DirectDraw, DirectSound, DirectMusic, Direct3D ve DirectPlay gibi arayüzlerini içermekteydi.
DirectX’in ilk sürümü, 1995 yılında Windows Games SDK olarak piyasaya girdi. Buna ek olarak DirectX, yüksek performansa sahip multimedya içermesine de izin verdi. DirectX destekli ilk oyun ise 1996 yılında piyasada yer aldı. Ardından, DirectX’in 2.sürümü 1996 yılında çıktı. DirectX arabiriminin bileşenleri de yavaş yavaş piyasada tanınmaya başladılar. Buna ek olarak grafik kartları, ses kartları, anakartlar, giriş aygıtları, CPU’lar, oyunlar ve multimedya uygulamaları da yeni sürümde teste girdiler.
DirectX arabirimini oluşturan ekip, yeni donanım tasarımlarının ve sürümlerin DirectX ile uyumlu olacağını duyurdu. Microsoft, DirectX öncesinde OpenGL adında bir açık grafik kitaplığını kurmuştu. Ancak OpenGL, üst düzeyde bir donanım gerektirmekteydi. Bu nedenle Direct3D tasarımı oluşarak OpenGL alternatifi ortaya çıktı. 3D oyunlar geliştikçe programlama teknikleri daha iyi bir hal aldı. Bunun sonucunda geliştiricilere OpenGL ya da Direct3D kullanım seçeneği verildi.
Konsollarla ilgili durumda da DirectX; Microsoft’un Xbox, Xbox 360 ve Xbox One Konsol arabirimi için bir temel kullanım durumundaydı. 2002 yılında Microsoft, 2.0 sürümü ile DirectX 9’u oluşturdu ve DirectX’i sürekli güncel tuttu. Böylelikle DirectX nedir sorusuna ek olarak DirectX’in tarihi hakkında da bilgi vermiş olduk. DirectX’in birçok bileşeni olduğunu yazımızda belirtmiştik. Bu bileşenler hakkında da bilgilendirme yapmamız faydalı olacaktır.
DirectX Bileşenleri Nelerdir?
DirectX’in çok sayıda bileşeni vardır. Ancak bu bileşenlerden bazıları artık kullanım dışıdır. Kullanım dışı olan bileşenler hakkında bilgi vermek yerine kullanımı devam eden bileşenler hakkında bilgilendirme yapacağız.
Direct3D
Direct3D, Windows’un grafik uygulama programlama arabirimidir. Bu arabirim, DirectX’in bir parçasıdır. Kullanım amacı ise oyunlar gibi performansın önem taşıdığı uygulamalarda üç boyutlu grafikler oluşturmaktır. Direct3D, grafik kartında yer alıyorsa donanım hızlandırmayı kullanır. Bu eylem, 3B hattının donanım hızlandırmasına ya da kısmi hızlandırmaya olanak sağlar. Direct3D bileşeninin birçok özelliği vardır. Bunlar:
- W-arabelleğe alma
- Z-arabelleğe alma
- Şablon arabelleğe alma
- Uzamsal kenar yumuşatma
- Renk harmanlama
- Alfa harmanlama
- Doku harmanlama
- Mipmapping
- Kırpma, ayırma
- Atmosferik efektler
- Doğru doku eşleştirme
- Programlanma olanağı olan HLSL gölgelendirici
Direct3D, bu özellikleri sayesinde 3D grafik donanımının grafik yeteneklerini ortaya çıkarmaktadır. Bunun yanında Direct3D, 3B bilgisayar grafiği oluşturmada çeşitli komutlar içermektedir. DirectX 8 sürümünden sonra DirectDraw bileşeninin yerini alıp 2D grafik oluşumunu da üstlenmiştir. Microsoft, 3D grafik kartlarındaki teknolojiyi desteklemesi için Direct3D’yi sürekli güncel tutmaktadır.
DirectX’in bileşeni olan Direct3D, Windows 95 işletim sistemi ve üstü için uygundur. Bunun yanı sıra Xbox konsolunun vektör grafik arabiriminin temeli halindedir.
DXGI
Bu bileşenin açılımı, ‘DirectX Grafik Altyapısı’ şeklindedir. Direct3D 10.0 ve üstü için bazı grafik arabirimleri ile grafikler arası eşleme sağlayan kullanıcı modu bileşenidir. Aynı zamanda Windows Görüntü Sürücüsü Modeli ile bir arabirim oluşturmaktadır.
DXGI, grafik bağdaştırıcılarıyla monitörleri numaralandırma, görüntüleme modlarına numaralandırma yapma, arabellek formatını seçme ve süreçler arasındaki kaynakları paylaşma gibi görevlere sahiptir.
Direct2D
Direct2D, Windows Server 2008 R2’den Windows 10’a kadar olan bütün sürümlerde yer alan 2B vektör grafik uygulama programlama arabirimi olarak geçmektedir. Bu arabirim; bilgisayar, tablet, akıllı telefon ve modern grafik cihazlarıyla uyumludur. Bu cihazlardaki grafik kartlarında yer alan grafik işlem birimi (GPU) ile donanım hızlandırmasında işe yaramaktadır.
Klasik Win32 grafik arabirimleriyle ve Direct3D gibi modern arabirimleriyle birlikte çalışmaktadır. Bunun yanında yüksek görsel kalite ve hızlı işleme performansı sunmaktadır. Direct2D’nin bazı temel özellikleri yer almaktadır. Bunlar; yüksek kalitede alt piksel metin işleme, kenar yumuşatma, Beizer geometrisi oluşturma, zengin geometri işlemleri, kompozit katmanlar, ilkel karışım modları, gradyan fırçası, ölçeklenebilir mürekkep darbesi, oyun geliştirme, fotoğraf ayarı, özel efektler ve komut arabelleğe alma şeklindedir.
DirectWrite
DirectWrite, Microsoft’un metin düzeni oluşturma arabirimidir. Ekrana işleme konusunda GDI ve Uniscribe’ın yerine geçecek şekilde tasarlanmıştır. İlk olarak 2007 yılında piyasaya sürülen Windows Vista’da yer almıştır. Bu bileşenin amacı, Direct2D üzerinde çalışıldığında donanımı hızlandırmaktır. Aynı zamanda CPU üzerinde de kullanımı mevcuttur.
DirectWrite, çok formata sahip metnin ölçümü ve çizimini desteklemektedir. Bunun yanında çift yönlü metin içerme, satır kesme, sayı değiştirme gibi özelliklere de sahiptir. Ayrıca çift yönlü kenar yumuşatma, alt piksel metin oluşturma, biçimsel alternatifler ve tipografik özellikleri de mevcuttur.
DirectCompute
Microsoft’un DirectCompute bileşeni, Windows Vista ve sonrasında piyasaya sürülen Windows sürümlerinde yer almaktadır. Bu arabirimin amacı, grafik işleme birimlerinde işlem çekirdeklerinin çalışmasını sağlamaktadır. DirectCompute de DirectX’in bir bileşenidir.
DxDiag
Bu bileşenin açılımı ‘DirectX Tanı Aracı’ şeklindedir. Bu aracın amacı, DirectX’in işlevselliğini tespit etmek ve seslerle videoların donanım sorunlarını gidermektir. DirectX Diagnostic, metin dosyalarını tarama sonuçlarıyla beraber kaydetmektedir. Bu dosyalar çoğunlukla teknik forumlarda yer alır ya da hatanın donanım arızası veya uyumsuzluktan kaynaklanması sonucunda daha iyi bir çözüm üretmek için destek e-postaları ekler.
XACT3
Bu bileşenin açılımı ‘Platformlar Arası Ses Oluşturma Aracı’ şeklindedir. Microsoft’un DirectX aracının bir parçası olan XACT, ses programlama kitaplığı ve motorudur. XACT bileşeni, ses yığını kullanmak için yazılan, ses yazmak ve oynatmak için yüksek düzeyde bir ses kitaplığıdır.
XAudio2
XAudio2; Windows için daha düşük seviyede ses içeren bir arabirimdir. Xbox 360’taki XAuidio’nun tamamlayıcısı niteliğindedir. Tamamlayıcısı olduğu ve görev aldığı sürümlerde, düşük seviyedeki ses mikseri olan WASAPI ile çalışmaktadır.
DirectX Raytracing (DXR)
DXR, DirectX 12 uygulama programının arabiriminde yer almaktadır. Amacı ise video grafik işleme için ışın izleme uygulamaktır. DXR’in birçok özelliği vardır. Bunlar: hızlandırma yapısı, komut listesi, HLSL gölgelendiricileri ve ardışık düzen durumu şeklindedir. Hızlandırma yapısı, biçimlendirilmiş 3B ortamın bir temsilidir.
Komut listesi, yansıma grafiklerini oluşturmak için yer alan ışınların başlangıcıdır. HLSL gölgelendiricileri ise ışın oluşturma, isabet ve ışın izlemeyi oluşturmaktadır. Ardışık düzen durumu da işlem hattı durumu nesneleri, GPU bilgilerinin yorumlama ve oluşumunu belirleyen donanım ayarlarıdır.
DirectX Sürümleri Nelerdir?
Çoğu uygulama ve programlarda olduğu gibi DirectX’te de birçok sürüm gelişimi olmuştur. Bu sürümler, gerek arabirimin daha gelişmiş halini üretmekten dolayı, gerekse yeni çıkan işletim sistemlerine uyum sağlama durumundan dolayı ortaya çıkmıştır. DirectX’in günümüzde toplamda 13 ayrı sürümü yer almaktadır. İlk sürüm 1994’te ortaya çıktı ve ardından 5. sürüme kadar devam etti. İlk büyük ilgi, DirectX 5 sürümünde ortaya çıktı.
Ardından DXDiag desteği olan DirectX 6 sürümü piyasada yerini aldı. Sonrasında optimizasyon düzeyi gelişmiş olan 7 ve 8. sürümler ortaya çıktı. Ancak asıl gelişme 9. sürümden itibaren oldu. Biz de bu yazımızda DirectX 9 sürümünden itibaren olan sürümler hakkında bilgi vereceğiz.
DirectX 9
DirectX 9 sürümü, 2002’de piyasaya sürüldü ve bu tarihten sonra geliştirilen tüm Windows sürümlerinde kullanılabilir durumda oldu. Ancak DirectX 9, değişikliğe uğradığı için bazı sürümlerde desteklenmeyecek duruma geldi. 2005 yılında da DirectX 9 sürümünden daha üst düzey bir sürüm üretimi için çalışmalar başlamıştır.
DirectX 10
DirectX arayüzü için önemi yüksek olan DirectX 10 sürümü, sadece Windows Vista ve daha sonraki sürümlerde yer almaktadır. Yani Windows XP ve öncesindeki sürümlerde DirectX 10 sürümü etkili bir şekilde çalışmamaktadır.
DirectX 10 sürümünün değişimi için bazı DirectX bileşenleri kaldırılmıştır. Bunlar; DirectX SDK kullanımı, DirectInput, XACT3, donanım hızlandırmalı ses, DirectPlay şeklindedir.
DirectX 11
Microsoft, DirectCompute ve mozaikleme destekli, Direct3D 11 ve video oyunu geliştirmede yardımcı olucu etkiye sahip DirectX 11 sürümünü oluşturdu. DirectX 11 sürümünde, 10.1 sürümünün tüm donanım ve arabirim özellikleri aynı şekilde kalmıştır. DirectX 11 sürümü, çok çekirdekli işlemcileri daha iyi kullanmaktadır. Bunun yanında DirectX 11, Windows Vista ve sonrasında piyasaya sürülen işletim sistemlerinde çalışmaktadır.
DirectX 12
Bu sürüm, 2015 yılında piyasaya çıktı. DirectX 12 sürümünün ön plana çıkan özelliği, Direct3D 12’nin sürücü yükünü azaltan gelişmiş bir düşük seviyeli programlama arayüzü sunmasıdır. Kişiler kendi komut listelerini ve ara belleklerini grafik işlem birimine (GPU) uygulayıp paralel hesaplama ile verimli bir kaynak kullanımına sahip olabiliyorlar. Yani ana amaç, cihazlar üzerinde yüksek verimlilik sağlamak oluyor.
Bunun yanında çoklu adaptör desteği de DirectX 12’de yer alan özellikler arasındadır. Bu özellik sayesinde kişiler, sistemde aynı anda birden çok grafik işlem birimi kullanmasına olanak sağlamaktadırlar.
DirectX 12 Ultimate
Bu sürüm, hem Windows 10 bilgisayarlarda hem de Xbox Series X ve sonrasında piyasaya sürülen konsollarda yer almaktadır. Ultimate’te bazı yeni özellikler yer almaktadır. Bunlar; DirectX Raytracing 1.1’de kişilere tasarım seçeneklerine göre gölgeleme ayrıntılarının düzeyinde kontrol sağlayan Değişken Hız Gölgelendirme, Örnekleyici Geri Bildirim ve Mesh Gölgelendiriciler şeklindedir.
DirectX 12 Ultimate’in Oyunlar için Önemi Nedir?
Aslında DirectX 12 Ultimate, DirectX 12’nin temeli üzerinden oluşturuluştur. Bu sürüm, DirectX 12 üzerine yeni özellikler eklenerek oluşturulmuştur. Bu özelliklerden ilki, DirectX Raytracing 1.1’dir. DirectX 12 Ultimate, zamanla daha çok oyunu desteklediği için ışın izleme özelliğini Windows 10, Windows 11 ve Microsoft’un Xbox Series X konsoluna dahil etmektedir.
Bunun yanında DirectX 12 Ultimate, değişken oranda gölgelendirmeye de sahiptir. Bu özellik de GPU’nun odak nesnelerini işlemek amacıyla kaynaklarını daha iyi bir şekilde kullanmasına izin verir. Bu sayede daha iyi bir kare hızı ve daha fazla doğruluk yer almaktadır. Buna ek olarak daha az kaynak kullanımındaki doku kalitesini Örnekleyici Geri Bildirimi artırmaktadır. Bunun sonucunda yeni çıkan oyunlar Windows işletim sistemlerinde daha kusursuz çalışmaktadırlar.
Yüksek kalitedeki doku, gerçekçi bir aydınlatma ve daha sürükleyici oyun deneyimi kazandırmaktadır. Bu özelliğe erişim sağlamanız için DirectX 12 Ultimate sürümüne sahip olmanız ve bu sürüme uyum sağlayan bir ekran kartına sahip olmanız gerekmektedir.
DirectX Sürümü Nasıl Öğrenilir?
DirectX sürümleri, her bir yeni sürüm çıktığında daha gelişmiş formda olmaktadırlar. Bu nedenle kullanıcılar, bu sürümlerden en son çıkana sahip olmak istemektedir. Bunun için ise öncelikle cihazınızın kaçıncı sürümde olduğunu öğrenmeniz gerekmektedir.
- Cihazınızdaki DirectX sürümünün hangisi olduğunu öğrenmek için öncelikle “Başlat” menüsüne girin.
- Ardından ekranın arama bölümüne “Dxdiag” yazıp “Enter” tuşuna basın.
- Karşınıza çıkan ekranın en altında bilgisayarınızda yer alan DirectX sürümünün hangisi olduğunu görmüş olacaksınız.
DirectX Güncelleme İşlemi Nasıl Yapılır?
DirectX güncelleme işlemi için herhangi bir dosya indirmeniz gerekmemektedir. Çünkü DirectX güncellemesi yapmanız için gerekli olan tek şey, Windows Update özelliğinden faydalanmaktır.
- DirectX güncellemesi yapmak için cihazınızın ‘Ayarlar’ bölümüne girin. Karşınıza çıkan ekrandan ‘Güncelleştirme ve Güvenlik’ yazan yere tıklayın.
- Daha sonra ‘Windows Update’ yazan yere tıklayın ve güncelleştirme işlemine başlayın. Bu noktada işletim sisteminize DirectX güncellemesinin gelmiş olması gerektiğini unutmamanız gerekiyor. Eğer işletim sisteminize güncelleme gelmediyse DirectX sürümünüzü güncellemeniz mümkün değildir.
Genel Değerlendirme
DirectX, özellikle video oyunlarında çoklu ortam yazılımlarını hızlı ve rahat bir şekilde hazırlamak için oluşan yazılım programlama arayüzüdür. Bir oyunun en iyi görsele ve ses öğesine sahip olması için gereken sistemlerden biri DirectX’tir diyebiliriz. Ayrıca DirectX, oyun ve uygulamalarda grafik kartını çalıştıran ses, sürücü ve diğer donanımlar arasındaki bağlantıdan sorumludur. Aynı zamanda DirectX, oyunda gerçeğe yakın efektler ve ses gereksinimini de sağlamaktadır. Bu nedenle özellikle bilgisayar oyunu oynayan kişiler için DirectX büyük bir önem taşımaktadır.
Sizler için hazırlamış olduğumuz DirectX nedir rehberimiz burada sona eriyor. Sizler de DirectX hakkındaki soru ve düşüncelerinizi aşağıdaki yorumlar bölümünden bizlerle paylaşabilirsiniz.