DirectX 12 ve DirectX 11 Arasındaki Tüm Farklar

Uzun zamandır hayatımızda olan Microsoft’un API yazılım programlama arayüzü DirectX’in son sürümü DirectX 12 oyun dünyasında bazı dinamikleri değiştirecek. Peki DirectX 11 arasında ne gibi farkları var? Sizin için her iki DirectX sürümünü de inceledik ve öne çıkan özelliklerini tüm detaylarıyla anlattık.

Windows 7 versiyonu ile birlikte gelen DirectX 11, Vista versiyonuna da kurulabilen bir DirectX sürümüydü. DirectX 12 ile Windows 10 ile geldi ve beraberinde pek çok farklı yenilik getirdi. Yine de tüm kullanıcıların Windows 10 versiyonuna geçmemesi ya da geçmek istememesi nedeniyle hala DirectX 11 API yazılım programlama arayüzüne sahip pek çok bilgisayar kullanıldığı biliniyor.

DirectX 11 ve DirectX 12 gibi tüm API yazılım programlama arayüzleri için; bilgisayarınızda oyunların açılmasını sağlarlar demek yanlış olmaz. Oyun ile grafik sürücü arasında bir köprü vazifesi görerek bilgisayarınızda oyun açılmasını ve oynamanızı sağlayan DirectX API programlama arayüzünün son sürümü olan DirectX 12 ve bir önceki sürümü olan DirectX 11 arasında ne fark var sorusunu sizin için tüm detaylarıyla yanıtladık.

DirectX 11 ve DirectX 12 karşılaştırma videosu:

DirectX 11 ve DirectX 12 arasındaki farklar:

  • Çok çekirdekli işlemci performansı
  • Verimli donanım kullanımı
  • Oyun geliştiricilere kontrol imkanı
  • PSO kullanımı
  • Komut akış modeli
  • Kaynak bağlama

Çok çekirdekli işlemci performansı:

DirectX 9 ve 11 tabanlı oyunlar 2 ve 4 çekirdek kullanıyor hatta bazen bu sayı bir adetle sınırlı olabiliyordu. DirectX 12, oyun açılan bilgisayarda ne kadar çekirdek varsa gücü bu duruma göre eşit olarak dağıtıyor ve kullanıcıya çok daha güçlü bir performans sunuyor. Özellikle çok çekirdekli CPU kullanıcıları için dikkat çeken bir özellik.

Verimli donanım kullanımı:

NVIDIA çok daha iyi bir sürücü desteğine sahiptir, AMD donanımı ise bu konuda her zaman eksiktir. DirectX 12 böyle sorunları aşacak bir teknoloji eklemesi ile geliyor. Buna göre DirectX 12 hesaplama ve grafik gibi aşamaların aynı anda yürütülmesine izin veriyor ve böylece sürücü desteğini çok daha güçlü bir şekilde görmenizi sağlıyor.

Oyun geliştiricilere kontrol imkanı:

Oyun geliştiricilerin oyun üzerinde donanımı nasıl kullanacağı sürücüler ve API yazılım programlama arayüzleri üzerinden kontrol ediliyordu. DirectX 12 ile bu durum değişti. Artık oyun geliştiriciler DirectX 12 ile oyunlar üzerinde tam kontrol sahibi olabiliyor ve böylece kendi istedikleri optimizasyon işlemlerini gerçekleştirebiliyorlar.

PSO kullanımı:

DirectX 11 üzerinde bulunan GPU ardışık nesneleri Vertex Shader, Hull Shader, Geometry Shader gibi farklı durumlarda ve birbirine bağlı olarak bulunuyor. Ayrı ayrı tanımlamalar gerektiren bu durum DirectX 12 ile değişti. DirectX 12 bu durumları, oluşturulduktan sonra sonlandırılan PSO ile değiştiriyor. PSO az miktarda veri aktarımı yaparak dinamik geçiş ve tam verim sunuyor. 

Komut akış modeli:

DirectX 11’de GPU’ya giden tek bir komut akış sırası bulunur ve bu durum CPU üzerine binen yükü arttırarak olumsuz sonuçlara neden olur. DirectX 12 farklı komut listeleri ve çoklu iş parçacık imkanı olan yeni bir modele sahip. Model, tüm bu yükü farklı kaynaklara gereksinim duyan küçük parçalara bölerek eşzamanlı yürütmeyi sağlıyor. Böylece çok daha hızlı ve verimli sonuç alınabiliyor.

Kaynak bağlama:

DirectX 11 kaynak bağlama pek çok kullanıcı tarafından kullanışlı olarak görülse de donanım kullanımı açısından yetersizdi. Öyle ki hiç kullanmadığı donanım parçaları bile vardı. DirectX 12 tanımlayıcı yığın ve tablolara sahip. Verileri saklayan ve düzenleyen bu yığın ve tablolar GPU tarafından kullanılır. Yeni ihtiyaç halinde oluşturulan yeni tablolar sayesinde çok daha verimli kaynak bağlama oluşturulur.

DirectX 12’nin DirectX 11’e göre öne çıkan diğer özellikleri:

  • DirectX 12, DirectX Raytracing kısaca DXR isimli bir API desteği ile birlikte geliyor. 
  • Değişken hızlı gölgeleme özelliği ile GPU’nun ekranın görünür olan orta noktasına odaklanmasını ve çok daha kaliteli bir görüntü sunmasını sağlar.
  • DirectX 12 ile ekranın çerçeve noktalarındaki gölgeleme azalır ancak asıl odak noktasındaki görsel kalite artar. 
  • CAS özelliği ile 16 x 16 ekran döşemelerinde her birine ayrı gölgelendirme imkanı sunar. 
  • Harekete uyarlamalı gölgeleme özelliği ile örneğin bir yarış oyununda arabanın her karede gölgesi değişirken, yanlarda duran ağaçlar sabit kalabilir.
  • Çoklu GPU desteği ile farklı GPU’ları daha iyi bir şekilde ölçeklendirme, karıştırma ve eşleştirme imkanı sunar.
  • Doku önleyici geri bildirim özelliği ile oyunda kullanılmayan dokular bellekten çıkarılır ve bu durum VRAM gücünü 2,5 kat arttırır.
  • Çoğunluğu sabit bir görüntü üzerinde yalnızca belirli nesneler üzerinde gölgelendirme yaparak VRAM gücü verimli bir şekilde kullanılır.
  • DirectX 12 ile farklı GPU güçleri VRAM üzerine odaklanarak video belleğini ikiye katlayabilir.
  • DirectX 12 oyunların yazılım yönünü güçlendirmeyi amaçlar.
  • DirectX 12 yükseltmesi olan DirectX 12 Ultimate ile oyunlar farklı platformlar için kolayca optimize edilebiliyor. 

Sizin için Microsoft’un API yazılım programlama arayüzü olan DirectX’in son sürümü olan DirectX 12 ve bir önceki sürümü olan DirectX 11 arasındaki farkları ve her iki sürümün de öne çıkan özelliklerini anlattık. İki sürümün de farklarını gördükten sonra tercih yapmak tamamen kullanıcının tercihine kalmış bir durumdur.