DirectX

Logosu Microsoft DirectX'in eski 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 uygulama programlama arayüzüdür (API). Şu andaki en güncel resmî sürüm DirectX 12'dir. İçerdiği bileşenlerden bazıları şu şekilde özetlenebilir:

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 hâlen 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ı Cedega 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

DirectX 1

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

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

DirectX 3

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ıya sunulmuştur.

DirectX 7

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

DirectX 8

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

DirectX 9

Periyodik 32 ve 64 bit desteği sağlanarak gölgelendirme başta olmak üzere birçok temel yapıya rötuş atılmıştır. 2002 yılında son kullanıcıya sunulmuştur.

DirectX 10

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

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

Windows 7 ile gelen ve Windows Vista'ya da kurulabilen 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.2009 sonu satışa sunuldu.

DirectX 12

Windows 10 ile gelmiştir. Asıl amacı ek sürücü yükünü azaltmaktır. AMD'nin Mantle teknolojisine benzer. Max McMullen'e göre amaç "konsol düzeyinde verim" sağlamaktır.

NVIDIA'nın tüm Fermi modellerinde ve daha sonraki ekran kartı modellerinde, AMD'nin GNC tabanlı chipleriyle Intel'in Hawellve daha sonraki grafik ünitelerinde desteklenecek.

SIGGRAPH 2014 etkinliğinde Intel, bilgisayarda oluşturulan bir astoreit çalışma alanını gösteren, DirectX 12'nin rendering hızı ve CPU güç tüketimi konusunda önceki sürüme göre %50 ile %70 daha verimli olduğunu iddia eden bir demo yayınlamıştı.

Ekran Kartı Uyumluluk Durumları

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

Kaynakça

  1. ^ "Platform Update for Windows Server 2008 and the Platform Update for Windows Vista". 30 Ekim 2009 tarihinde kaynağından arşivlendi. Erişim tarihi: 28 Ekim 2009. 

Dış bağlantılar