15 Şubat 2015 Pazar

Windows 10 ve DirectX 12 ile Yeni Bir Dönem




Windows 10 ile birlikte gelecek olan DirectX 12, bizlere hangi heyecan verici yenilikleri getiriyor?

Microsoft'un Windows 10 ile birlikte sunacağı en önemli yeniliklerden bir tanesi, DirectX 12 olacak. Firma, çok konuşulmasa da DirectX 12'yi ve onun yeteneklerini geçen ayki Windows 10 etkinliğinde göstermişti. DX12'yle ilgili en iyi haberlerden bir tanesiyse onun yeni grafik kartlarına ihtiyaç duymayacak olmasıydı. DX12, eski kartlarda tüm işlevleri desteklemese de onlarla çalışabilecek.

Peki Windows 10'un final sürümüyle beraber gelecek olan DirectX 12'yi gerçekten beklediğimize değecek mi? Yeni API, oyunlara nasıl etki edecek? Cevapları yazımızda bulabileceksiniz.

Aslında iki yeni DirectX geliyor

Microsoft, oyun meraklıları için aslında bir değil, iki DirectX hazırlıyor: DirectX 11.3 ve DirectX 12.

DirectX 11.3, bağımsız oyun geliştiricileri için daha uygun API'lar sunacak. İşlevleri DirectX 12'ye benzeyecek ancak onun sahip olduğu yüksek gücü sunmayacak.

DirectX 12 ise alt ve üst seviye performanslı kodu hedef alacak. DX12'nin en önemli hedefi, donanıma daha yakın çalışmak olarak özetlenebilir.

Güç tasarrufu, üçüncü parti motorlarla ortaklıklar


Yeni DirectX, daha akıllı algoritmalar sayesinde işlemci güç kullanımını azaltarak Microsoft'a göre güç tüketimini yüzde 50'ye kadar düşürebilecek. En azından Microsoft'un yeni Xbox başkanı Phil Spencer'ın tanıtımda söyledikleri, bu yönde. Bunun yerine stabil bir sıcaklıkta FPS'de (saniyedeki kare sayısı) yüzde 50 kazanım elde etmek de mümkün olacak.

Dolayısıyla DirectX 12'nin oyun tutkunlarına verdiği vaatler, oldukça büyük ve heyecan verici. Microsoft'un DX12'yle bu vaatlerini yerine getirmesi, Windows 10'un piyasada dikkat çekmesini sağlayabilir.

Üçüncü parti motorlarla ortaklıklar

DX12'nin tüm potansiyelinin ortaya çıkması, performans artırımlarının / güç tasarrufunun teoride kalmaması için Microsoft'un DX12 tabanlı oyun motorlarının geliştirilmesine destek vermesi gerekiyor.

directx 12, oyun, windows 10,
Microsoft'un bunu yapması, geliştiricilerin çok karmaşık algoritmaları basit bir şekilde kullanmalarının yolunu açacak. Yazılım devinin bu iş için beraber çalıştığı firmalar arasındaysa Unreal Technologies'in Unity 3D motoru ve Epic Games'in Unreal Engine'i var. Elbette Unreal Engine'in DX11 desteği sunması, Unity3D'nin ise Windows ve Xbox'ta Direct3D ile desteklenmesi nedeniyle bu ortaklıklar, o kadar da yeni şeyler olmayacaklar.

iPhone ve Android'e de gelebilir mi?

DirectX 12'nin gerçek anlamda platformlar arası destek sunacağı dedikoduları bir süredir yapılıyor. Microsoft'un CEO Satya Nadella kontrolünde yazılımlarını her platforma getirmeye yönelik bir fikri benimsediği biliniyor. Örneğin Office, Android'de desteklendiği gibi, Linux'a bile gelebileceğinin ipuçları var.

Peki ya DirectX 12 gerçekten de iOS, Android, OS X gibi platformlara taşınabilir mi? Aslında bunun olmaması için bir neden yok. Microsoft'un Apple ile çapraz lisans anlaşmalarını paylaştıkları biliniyor. Google ise platformunun açıklığıyla övündüğünden, Microsoft'tan gelecek bir DirectX 12 teklifini geri çeviremeyebilir.

DX12'nin arka planında neler olup bitiyor?

DirectX 12'nin işlemci gücü kullanımından tam olarak nasıl tasarruf ettiğini muhtemelen merak ediyorsunuz. Microsoft, bu iş için birkaç yöntemden faydalanıyor.

Pixel Blending, anti-aliasing (AA) ve order independent transparency (OIT) gibi görevlerin daha hızlı yerine getirilmesini sağlıyor. Bu sırada unorder access views (UAV) yerine rasterizer order viewing (ROV) adı verilen bir geometri işleme tekniğinden faydalanılıyor. İşlemcinin shader sıralamaktan kurtulması, yükünün azalması anlamına geliyor.

Çok iş parçacıklı UAV bellek erişimi, ROV'u kullanmadığınız zamanlarda UAV'ye geçişe izin veriyor. Birden fazla iş parçacığı, kaynaklarını paylaşabiliyor ve programlanabilir harmanlamaya olanak tanıyor.

Conservative Rasterization (CR), poligon çakışmalarını piksellerin ortalarından test etmek yerine köşelerinden test ediyor. Bu sayede daha isabetli bir voxel oluşturulurken, grafik işlemleri daha az güçle yapılıyor. Burada kullanılan yöntem, Nvidia ve AMD'nin en son GPU'larında kullandığı multisampling tekniklerine benziyor.

Sonuç

Direct X11.3'te tüm bu vaatlerin ne kadarını göreceğimiz bir soru işareti. Bir başka merak ettiğimiz konuysa Windows 10'un telefonlardaki sürümünün DX12'ye ne şekilde yer vereceği.

Ancak DX12, mevcut tekniklerde geliştirmeler ve önemli yeniliklerle geliyor. Çok büyük bir yenilik olmadığını düşünüyor olabilirsiniz, ancak yeni algoritmaları önemli bir güç tasarrufu vadederken, daha isabetli grafik işleme ve daha iyi ışıklandırma teknikleri de Windows 10'da bizleri bekliyor olacak.