Ne yaptığınıza bağlı. Direct3D kullanıyorsanız, geçiş yapmanın tek nedeni, başka türlü alamayacağınız donanım özelliklerine erişmektir.
2D bir oyun için, teorik olarak bazı özelliklerin ilginizi çekmesi mümkündür. Örneğin, OpenCL veya DirectCompute. Civilization V, dokuları açmak için DirectCompute'den biraz yararlanır. Bu, sadece sıkıştırılmış verileri yüklemesi gerektiğinden yükleme süresini önemli ölçüde azaltır. Ve 2D oyunlarda genellikle çok fazla resim bulunur. Yükleme süresi önemliyse, bu yardımcı olabilir.
OpneCL tüm GeForce 8xxx donanımlarında ve üstünde mevcut olmalıdır. ATI'de HD 4xxx ve daha iyi donanımlarda mevcuttur.
DX11'de kullanabileceğiniz en büyük özelliğin gölgelendiricideki görüntüleri daha keyfi olarak okuma ve yazma yeteneği olduğunu söyleyebilirim. Bu, bazı özel efektler için yararlı olabilir. Şu anda hiçbir şey düşünemiyorum ... bu size bunun ne kadar önemli olduğunu söylemelidir.
Genel olarak, D3D kullanıyorsanız muhtemelen çok fazla kazanamayacağınızı söyleyebilirim. Ve yeni özelliklerin ne olduğunu zaten anlamadıysanız ve bunları oyununuzda kullanmak istiyorsanız, neredeyse kesinlikle çok fazla kazanamayacaksınız. Çoğu daha karmaşık olacak.
OpenGL önemli bir nedenden dolayı farklıdır. OpenGL 2.1 (D3D9'a az ya da çok eşdeğer) bir API olarak berbat . OpenGL 3.3 (artı 3.3 donanımda çalışan bazı yeni uzantılar) API'yı çok geliştirir. Açık öznitelik konumu, gölgelendirici programlarının ayrılması, gölgelendirme dil paketi 420'deki her şey vb.
Bunlardan bazıları 2.1'e karşı uzatma şeklinde yeterince iyi çalışıyor. Bazıları ... yapma. Hala attribute
(geçerli in
sözdiziminden önce ) bildirimleriyle açık öznitelik konumlarını kullanmanın uygun olup olmadığından emin değilim . Gölgelendirme dili paketi 420, özellikle 1.30'dan önceki GLSL sürümleriyle çalışmadığını söylüyor (aka: OpenGL 3.0).
Bu GL 2.1'in kullanılamaz olduğu anlamına gelmez. Kesinlikle işlevsel ve servis edilebilir, sadece eğlenceli değil. Bu uygulamaya bulacaksınız bazı sürücüler rağmen o değil servis. ATI'nin DX9 donanımı artık desteklenmediği için bu sürücüler gerçekten hatalı. Ve Intel asla OpenGL'yi umursamadı, bu yüzden donanımlarında gölgelendiricilerin kullanılması pot-şans.
Ancak kişisel olarak, amaçladığınız kullanıcı tabanı buna izin veriyorsa, OpenGL kullanıyorsanız GL 3.3'e basarım. Değilse, sadece 2.1 sorunla uğraşmak zorunda kalacaksınız.