DirectX'in ölümü ve tekrar doğuşu!

DirectX 9 bomba gibiydi, DirectX 10 yerlerde süründü. Peki ya DirectX 11? İşte Direct X'in hikayesi.

DirectX: Ölümü, tekrar doğuşu

Hüseyin Cem Köylü

Eskiden, yeni bir DirectX sürümü çıktığında müthiş yenilikler getirir ve eskisinin pabucunu dama atardı, fakat son zamanlarda durum değişti. DirectX 9'un ilk sürümü Aralık 2002'de yayınlandı ve 10 yıl sonra bile büyük merakla beklenen oyunlar DX9 üzerinden üretiliyor.

DX 10 ve 11 hiçbir şey sunmuyor değil. Crysis'i açıp, stüdyonun bu yeni grafiksel API'larla neler yapabileceğini görmem mümkün. Oyundaki ormanlar motion blur, post-processing ve ışık oyunlarıyla daha önce hiç görmediğimiz kadar gerçek görünüyorlar.

DX 10'un ilk günlerinde her şey güllük gülistanlıktı aslında. Bioshock'un kendine has stili ve iyi API (Uygulama Programlama Arayüzü) kullanımı, Far Cry 2'nin bize sunduğu Afrika savanları çekici görünüyordu. Tabi hiç biri Crysis ile başa çıkamadı, orası ayrı.

Fakat şöyle bir gerçek vardı ki, hiç kimse bu oyunları tam kapasite çalıştıracak bilgisayarlara sahip değildi. Geliştiriciler DX 10 üzerinde çalıştıklarını söyleseler de, bu DX 10 görüntüler nedense eski DX 9'lara çok benziyorlardı. Bize söylenen inanılmaz uçurumu sunamıyorlardı. Ayrıca bir büyük problem de, DX 10'dan yararlanmak isteyen kullanıcıların işletim sistemlerini Vista'ya yükseltmeleri gerektiğiydi. Çoğu kişi XP'den gayet memnundu ve yükseltme gereksinimi duymadı, öte yandan Vista'ya geçenler de sayısız sürücü problemiyle karşılaştılar. DX 10'un işletim sistemi bağımlılığı ve yüksek sistem gereksinimleri de, oyun dünyasının Microsoft'un yeni API'larına olan açlığını kaybettirdi.

DirectX: Bir API'ın yolculuğu

DirectX: Bir API'ın yolculuğu
OpenGL'in en iyisi: Quake...

2009 sonlarına doğru DirectX 11 yayınlandı. Düzeltilecek pek çok yanlış ve uzak durulması gereken pek çok hata vardı. Hem bu sefer insanların sevdiği bir işletim sistemine bağlı olarak geliyordu ve oyun grafikleri ve performansında etkileyici bir potansiyeli olduğunu gösterdi. Fakat buna rağmen DX 11 başlığı altında devrim yaratan bir şey göremedik, hala karşımıza çıkan OpenGL desteğiyle beraber etkileyici DX 9 oyunlardı.

90lı yıllara dönecek olursak, DirectX ve OpenGL rakip iki teknolojiydi. İkisi de piyasadaki dominant API olma yarışındaydılar. Bu sayede tüm ekran kartı üreticileri onlar için sürücü desteği verecek ve oyun yapımcıları oyunları kendi teknolojileri üzerine kuracaktı. Bu yılların sonuna doğru SGI'in OpenGL'i avantajlı durumdaydı; tabi bunda id Software ve Half-Life'a güç veren Quake motorunun payı büyüktü. Doom ve Quake serileri piyasada büyük ses getirdi.

Her yeni oyunla beraber, id Tech motorları, grafiksel özelliklerini OpenGL ile paralel olarak geliştirdi ve diğer geliştiriciler için de cazip oyun motorları meydana geldi.

Milenyumla beraber Microsoft DirectX 8 ile OpenGL'i koltuğundan etti. İlk defa DirectX, OpenGL ile eşit olmakla kalmayıp bir de vertex ve pixel shader desteğiyle onun önüne geçti. Resident Evil 2 ya da benzeri multi-platform oyunları PC'de oynayanlar oyunun kalitesini hatırlarlar. Oyunlar öncelikle konsol için yazılıp, sonra da PC platformuna yeniden kodlanarak aktarıldığı için, büyük bir çoğunluğu gerek klavye ve fareye kötü uyarlanması gerekse oyun kodlarının kırılgan ve sağlam olmamasından dolayı oynanamaz bir durumdalardı.

Ve sonuç olarak, hiç de şaşırtıcı olmayan bir şekilde, konsol oyunlarından devşirme PC oyunları kayda değer bir satış yakalayamadı.

Ve Halo geldi...

Ve Halo geldi...

Bu trendi değiştiren oyun ise Halo oldu. Orijinalinde PC ve Mac için tasarlanan oyun, Microsoft'un Bungie Studios'u satın almasının ardından yeni yetme konsol Xbox'a özgü olarak sunuldu. Sonuç olarak Halo'nun PC'ye gelmesi için 2 sene beklemek gerekti; tabi bu sırada Xbox kullanıcılarının oyunu ballandıra ballandıra anlatması da sinirlerimizi bozmadı değil.

2003 yılında PC için yayınlandığında, DirectX 9.0 desteğiyle geldi oyun. Bungie Studios, oyunu geciktirmenin üzüntüsünü yaşıyordu, fakat doğrusunu söylemek gerekirse, oyunun PC sürümü, orijinal Xbox sürümünden çok daha güzeldi. Çünkü göz alıcı DX 9 görsel efektlerini Xbox'ta görmek mümkün değildi.

Halo'nun PC'de hayat bulan hali de asında mükemmel değildi. Kare sayıları düşüktü ve performans değişkendi ama buna rağmen oynanabilir düzeydeydi. Klavye-fare kullanımı rahat ve kolaydı. Ve bu oyun gelecek on yılın multi-platform oyunlarının protokolünü belirledi.

Platformlar arası API olarak DirectX kullanılması, daha az hataya sahip oyunların yapılmasını sağladı. DirectX 9 kaliteliydi ve iyinin de ötesinde grafikler tasarlayabilecek esneklikte bir API'dı. Microsoft'un konsol ve PC oyunlarına el atmasıyla OpenGL iyice saf dışı kaldı.

Konsolların etkisi

Konsolların etkisi

Xbox 360, Shader Model 3 desteğiyle beraber özelleştirilmiş bir DirectX 9.0c sürümü üzerine kurulu. PlayStation 3 ise doğuştan OpenGL desteğiyle geliyor. PC dünyasında ise işler farklı, artık DirectX 11 dönemindeyiz. Yeni teknolojileri yakalamak için tek bir ekran kartı değişikliği yeterli oluyor fakat konsolda durum böyle değil, doğuştan gelen API'ya tüm hayatı boyunca mecbur konsollar. Bu da PC için DX11'in mozaikleme ve çok-çekirdek işleme teknolojileri üzerinde yoğun uğraşlar veren geliştiricilerin, konsol için en baştan çalışmaları anlamına geliyor.

Öyle ya da böyle, geliştiricinin sıfırdan bir motor tasarlaması pahalı ve zaman alan bir iş. PC pazarındaki düşük kar oranları da göz önüne alınınca, çoğu oyun stüdyosu buna değmeyeceğini düşünüyor. Zaten bu yüzdendir ki büyük bütçeli hasılat rekorları kıran Crysis 2 ve The Wichter 2 gibi oyunlar DX9.0c ile yapılıyor.

The Witcher 2'nin grafik programcısı Bartlomiej Wronski şöyle diyor: "Bence biz de dahil olmak üzere çoğu geliştiricinin DX 11 desteği vermemesinin sebebi, iki farklı API'ya (DX 9 ve DX 11) destek vermenin çok daha fazla çalışma ve test aşaması gerektirmesi. Ayrıca boruhattı (pipeline) zorlukları da yaratıyor. Hangi özelliklerin daha düşük kalitede işleneceği veya tamamen vazgeçileceği bile sanatçı, programcı ve denetleyicilerimiz için daha fazla iş anlamına geliyor. Xbox 360, DX 9'a çok benzeyen, sadece DX 10 / 11'den birkaç ufak eklentisi (doku sırası ve donanım mozaikleme gibi) olan bir API'ya sahip. Yani multi-platform oyun motorlarını tasarlarken DX9'u baz almamız gerekiyor. Biliyoruz artık yaşlandı ve DX 10 / 11 yeni özellikler ve performans sunuyor, burada dengeyi kurabilmek önemli."

Neden hala DirectX 9?

Neden hala DirectX 9?
DirectX 11 için iyi bir ekran kartı şart!

Fakat, diyor Wronski, konsoldan ziyade her PC oyuncusunun da DX 11 çalıştıran bilgisayarı yok. "Oyunların hala DX 9 ile gelmesinin ana sebebi PC kullanıcılarının çoğunun Windows XP ve eski ekran kartları kullanıyor olmaları. Açıkcası, DX9.0c Shader Model 3.0 ile birlikte hala güçlü ve güzel bir API, bize güzel mekanlar, karakterler ve sahneler yaratma olanağını sağlıyor."

Kısacası geliştiriciler DX11 temelinde çalıştıklarında eski DX9.0c ile çalışan XP oyun makinalarına kıyaslandığında çok az oyuncuya hitap ediyorlar. Bu durum, DX 11'in geleceğini belirsizleştiriyor. Wronski'nin de dediği gibi "DX 11 çok iyi ve gelişmiş bir API olmasına rağmen, olanakları yeterince kullanılamıyor, bu durumda yeni versiyonların geleceğini söylemek çok zor. Geometri gölgeleme (geometry shaders), doku dizileri (texture arrays) ve dinamik donanım mozaikleme (dynamic hardware tessellation) gibi güzel özellikler hala uygulanmayı bekliyor."

DX11 oyuncularının sayısı gittikçe artıyor ve yakında pazarı ele geçirecekler. Açıkça görülüyor ki, bir sonraki önemli adım motor geliştirmesi. "Gelecek nesil konsollarda olabileceğine inanıyoruz. Geleceğin oyunlarında kullanılacak olan API'lar geleceğin konsollarındaki ekran kartına bağlı" diyor Wronski. Yani, geliştiricilerin bakış açısı şu: Oyuncular ne zaman hazırsa biz de o zaman başlayacağız.

Ne zaman ki yeterli sayıda DX 11 kullanıcısı olacak, işte o zaman DX 11 oyunları daha yaygın görmeye başlayacağız. Hele ki yeni nesil konsollar DX 11 desteği ile gelirse, bu işe kesin gözüyle bakabiliriz.

DirectX 10 Vista'nın kurbanı mı?

DirectX 10 Vista'nın kurbanı mı?

DX 10'un en büyük eksisi, düşük performanslı ve XP gibi bir efsaneden sonra çok sönük kalan Vista ile kullanılma zorunluluğuydu. Üstelik DX 10 destekleyen ekran kartları da yüksek fiyatlıydı. DX 10 ve Vista kombinasyonu, hem düşük performanslı hem de pahalı olduğu için tutmadı. Fakat bir oyun vardı ki DX 10'un tüm nimetlerinden faydalanıyor ve şimdiye kadar hiç görülmeyen bir dünyaya sokuyordu bizi.

Crysis, çıktığında piyasayı salladı ve bize inanılmaz bir görsel deneyim sundu. Fakat çok yüksek paralar verilerek kurulan sistemler bile Crysis'i en yüksek ayarlarda çalıştıramıyordu. DX 10'un son teknoloji görüntülerinden sadece Crysis'in yararlanması ve tüm DX 10 oyunların düşük kare sayılarında oynanması, DX 10 oyuncularını hayal kırıklığına uğratmıştı.

Hal böyle olunca, PC oyuncuları DX 11'e kaygıyla yaklaştılar. Gerçi bu sefer bağımlı olduğu işletim sistemi, Windows 7, sevilen ve performanslı bir sistemdi fakat yine de DX 11'den yararlanmak için yeni ekran kartı almak gerekiyordu.

Şimdi devir DirectX 11'in devri...

Şimdi devir DirectX 11'in devri...

DX 10 - 11 geliştirme aşamalarında Microsoft'ta çalışmış olan ve şu an PC Gaming Alliance başkanlığını yapan Matt Ployhar "Dünyada 250 milyon civarında DX 10 - 11'e hazır PC oyuncusu var. DX 10 ve 11'in asıl problemi, tüm markette olmamaları. Tüm yedinci jenerasyon konsolların toplam sayısından daha fazla olmalarına rağmen hala kullanılmıyorlar."

Ployhar, DX 11'i grafik devrimi yaratacak potansiyele sahip bir maden olarak görüyor. Madem öyle, neden piyasada geliştirilen DX 11 oyun sayısı az? "Güzel soru." diyor Ployhar. "Aslında olmalı. DX 11 bir oyunun görsel olarak sunabileceği her şeyi en iyi şekilde karşılayacak özelliklere sahip. Gerçek problem, genel olarak PC oyunu yapımında teşvik eksikliği. Konsol üreticileri, bir platform için yıllık yüzlerce milyon dolar harcayabiliyorlar, fakat aynı miktarda harcama PC'de olmuyor."

Öyle gözüküyor ki DX 11'i tutan tek şey, zaman. Belki de, selefi DX 10 da kötü şöhretini hak etmiyordu. Sonuçta DX11'in yürüdüğü yolları o döşedi. "İnsanları yeni API'ya geçirmek hiçbir zaman kolay olmadı. Microsoft'un pazarda yerini sağlamlaştırması da yıllar aldı. Böyle şeylerin bir gecede olmadığı açık. DX 10 - 11 ve sonrası için de bundan farklı olacağını beklemek yanlış olur" diyor Ployhar.

DX 10 biraz bahtsız bir zamanda çıktı, fakat büyüdü ve daha güzel olan DX 11'i meydana getirdi. Öyle de gözüküyor ki, oyuncular DX 11'e hazır ve geliştiricilerin neler yapabileceğini bekliyorlar. Geçtiğimiz birkaç yıl, Direct X'e bakışımızı değiştirmiş olsa bile PC oyunculuğunda hala önceden olduğu kadar önemli yeri var.

Okuyucu Yorumları