DirectX

Vikipedi, özgür ansiklopedi
Atla: kullan, ara
Microsoft DirectX Logosu

DirectX, Microsoft'un video oyunları başta olmak üzere çoklu ortam yazılımlarını rahat, hızlı ve uyumlu şekilde hazırlayabilmek için yarattığı bir API yazılım programlama arayüzüdür. Şuandaki en güncel resmi sürüm DirectX 11'dir. İçerdiği bileşenlerden bazıları şu şekilde özetlenebilir:

  • Direct3D (veya bir diğer adıyla WGF: Windows Graphics Foundations - Windows Grafik Temelleri) hem iki hem üç boyutlu grafikleri ekrana dökmeye yarar. Piyasadaki çoğu ekran kartının en modern donanım hızlandırma özelliklerini destekler. En büyük rakibi OpenGL'dir
  • DirectSound hem iki hem üç boyutlu ses için kullanılır. Windows altında çalışabilen her ses kartı en azından yazılım ile DirectSound ve DirectSound 3D desteğine sahiptir. Piyasadaki tüm rakipleri göz ardı edebilecek bir popüleriteye sahiptir.
  • DirectPlay ise TCP/IP, modem ve Bluetooth gibi birçok protokol üzerinden bağlantı ve mesajlaşma bileşenlerini içerir. TCP/IP üzerinde NAT veya uPnP geçişlerini desteklemesi ve DirectPlay Voice ile saniyede 1.2 kbit'e kadar inebilen ses sıkıştırma codec'leri ile göz doldurur. Açık kaynak dünyasında en bilinen rakibi HawkNL'dir.

Windows 95 ile birlikte oyun programcılarını DOS'tan Windows'a doğru çekmek için yaratılmış olan bu arabirim, ancak 5.0 sürümünden itibaren beklenen ilgiyi görmeye başlayabilmiştir. Windows 2000'in çıkışıyla birlikte gerçek kip oyunlarının sonu gelmiş olduğundan, Windows altında vazgeçilmez oyun arayüzü haline gelmiştir. XBox'ta da DirectX'in kullanılıyor olması, arabirimin popülaritesini artırmada etkili olmuştur. Buna ek olarak, son zamanlarda DirectX Managed (.NET tabanlı) modülü sayesinde çok hızlı bir şekilde kolayca, karmaşık DirectX uygulamaları yazmak mümkün hale gelmiştir fakat yönetimli DirectX bileşenleri C ve C++ programlama için geliştirilmiş DirectX Kütüphaneleri kadar performans gösteremezler. Yönetimli bileşenlerin kullanılmasıyla geliştirilen programlar, DirectX kütüphanelerinin kullanılmasıyla geliştirilen programlar kadar hızlı olamazlar. Bu nedenle profesyonel video oyun programlamada halen DirectX kütüphaneleri kullanılmaktadır.

Sanılanın aksine, Linux altında DirectX bileşenlerinin büyük çoğunluğunun kullanılması Cadega sayesinde mümkündür. Bu yazılım, Direct3D'yi OpenGL, DirectSound'u ise OSS (Open Sound System - Açık Ses Sistemi) kullanarak çalıştırır.

Sürümleri[değiştir | kaynağı değiştir]

DirectX 1.0[değiştir | kaynağı değiştir]

DirectX 1.0; Windows platformunda Video Oyunu Yapımı için ilk geliştirilmiş API'dir. 1995 yılında Windows 95 için geliştirilmiştir. İlk DirectX, geliştiriciler tarafından beklenen ilgiyi toplayamamıştır.

DirectX 2.0[değiştir | kaynağı değiştir]

DirectX 1.0 sürümüne bazı destek özellikleri sunulmuştur. 1996 yılında son kullanıcılara sunulmuştur.

DirectX 3.0[değiştir | kaynağı değiştir]

Bu sürüm ile çoklu oyun oynamaya olanak sağlanmış ve 3D ses özelliği eklenmiştir. 1996 yılında son kullanıcılara sunulmuştur.

DirectX 7.0[değiştir | kaynağı değiştir]

Bu DirectX versiyonunda optimizasyona (eniyilemeye) önem verilmiştir. 1999 yılında son kullanıcıya sunulmuştur.

DirectX 8.0[değiştir | kaynağı değiştir]

Bağlantı noktaları (vertexler) ve pixel shader ile görüntü işleme teknolojisi geliştirilmiştir. 2000 yılında son kullanıya sunulmuştur.

DirectX 10[değiştir | kaynağı değiştir]

Bu sürümde bazı ekran kartları ile uyumsuzluklar giderilmiş, performans üzerinde çalışmalar yapılmıştır. Windows Vista Service Pack 1 ile gelmektedir ve hem Nvidia hem ATI kartları tarafından desteklenmektedir

DirectX 10.1[değiştir | kaynağı değiştir]

Bu sürümde bazı ekran kartları ile uyumsuzluklar giderilmiş, performans üzerinde çalışmalar yapılmıştır. Windows Vista Service Pack 1 ile gelmektedir ve hem Nvidia hem ATI kartları tarafından desteklenmektedir.

DirectX 11[değiştir | kaynağı değiştir]

Windows 7 ile gelen ve Windows Vista'ya da kurulabilen [1] DirectX sürümüdür. Üstün ve gerçeğe çok yakın grafik kalitesi sağlar. Tesselation gibi poligon çoğaltma ve işleme tekniğini destekler. Sadece destekleyen AMD RADEON HD 5xxx, ve NVIDIA GT4xx serisi kartlar ile kullanılabilir. Kartların 2009 sonu satışa sunuldu...

DirectX 12[değiştir | kaynağı değiştir]

En son çıkan sürümdür. Bazı ekran kartıları buna uygun olarak çıkmış bulunmaktadır.

ekran kartı uyumluluk durumları[değiştir | kaynağı değiştir]

DirectX Versiyonu Shader Model OpenGL karşılığı
DirectX 11 Pixel Shader 5.1 OpenGL 4.0
DirectX 10.1 Pixel Shader 4.1 OpenGL 3.x
DirectX 10 Pixel Shader 4.0 OpenGL 3.0
DirectX 9c Pixel Shader 3.0 OpenGL 2.1
DirectX 9 Pixel Shader 2.0 OpenGL 2.0
DirectX 8.1 Pixel Shader 1.3 & 1.4 OpenGL 1.8
DirectX 8 Pixel Shader 1.1 OpenGL 1.4
DirectX 7 Hücre metni OpenGL 1.2

Kaynaklar[değiştir | kaynağı değiştir]

Dış bağlantılar[değiştir | kaynağı değiştir]