CodeWeavers, DirectX 12 Windows oyunlarının Linux'ta çalışmasına yardımcı oluyor

click fraud protection

CrossOver'ın geliştiricileri CodeWeavers, CodeWeavers ve Wine uyumluluk katmanlarında DirectX 12'ye yönelik iyileştirmeler üzerinde çalışıyor.

CodeWeaver'lar Karşıdan karşıya geçmek Windows uygulamalarını diğer işletim sistemlerinde çalıştırmanın en popüler yollarından biridir. Açık kaynağın mükemmel çalışmasını birleştiriyor Şarap projesi (CrossOver geliştiricilerinin kodlarına katkıda bulunduğu) kullanımı daha kolay bir arayüz ve ön uç ile. CodeWeavers CrossOver 21'i yayınladı ağustosta geri döndümve şimdi de şirket, Linux ve Mac'e modern oyun desteği getirme çalışmalarına ilişkin ayrıntıları paylaştı.

Yeni Windows oyunlarının çoğu (ve diğer grafik ağırlıklı uygulamalar), Windows'un en son sürümü olan DirectX 12'yi kullanır. Microsoft'un DirectX grafik kütüphanesiDaha hızlı performans elde etmek için daha düşük düzey API'leri kullanan. DirectX yalnızca Windows'ta (ve Xbox konsollarında) mevcuttur, bu nedenle Wine uyumluluk katmanı VKD3D'yi kullanır Direct3D çağrılarını Vulkan üzerinde yürütmek için grafik kitaplığı (Linux, Windows ve diğer sürümlerde mevcuttur) platformlar). Vkd3d kütüphanesi

öncelikle Valve Software tarafından geliştirildi onun için Proton uyumluluk katmanıve VKD3D'deki hızlı ilerleme, bu kadar çok Windows oyununun artık Linux'ta oynanabilmesinin ana nedenidir.

Yeni bir açıklamaya göre CrossOver halihazırda VKD3D'yi içerse de CrossOver resmi olarak DirectX 12 oyunlarını desteklemiyor ve geliştiricileri birkaç performans sorununu çözüyor. Blog yazısı:

CrossOver, DirectX 12 oyunlarını çalıştırmak için VKD3D'yi kullanır. VKD3D, temel olarak oluşturulmuş bir 3D grafik kütüphanesidir. Vulkan. Şu anda VKD3D performansını artırmak için birçok çalışma yapılıyor. Vulkan'ın yardımıyla tanımlayıcı indeksleme uzantısıDirectX 12 tanımlayıcı yığınlarına benzer işlevlere izin veren Vulkan tanımlayıcıları daha az yazılır ve çok daha az GPU belleği kullanılır. Sonuç olarak VKD3D, Tier 2 ve Tier 3 donanımlarından kaynak gerektirecek kadar yeterli tanımlayıcı kullanan oyunları destekleyebilir.

CrossOver, CrossOver 22'nin gelecekteki sürümüyle birlikte 2022'de Linux'ta DirectX 12 oyunlarını ve uygulamalarını resmi olarak desteklemeye başlamayı planlıyor. Ancak şirket VKD3D'nin Mac'te ne zaman işlevsel olacağından pek emin değil. Apple, Vulkan'ı macOS'ta (veya iOS'ta) hiç desteklemiyor; bunun yerine geliştiricilerin Vulkan'ı kullanmasını istiyor. Metal grafik kütüphanesi. Bu, CrossOver için bir sorun, blog yazısı şöyle devam ediyor:

Genel olarak Metal, mozaiklemeyi farklı şekilde yapar ve geometri gölgelendiricileri ve dönüşüm geribildirimi eksiktir. DirectX 12 ve Metal'e özel olarak kaynak sınırlamalarıyla ilgili bir sorun var. Genellikle oyunların en az bir milyon gölgelendirici kaynak görünümüne (SRV) erişmesi gerekir. Bu kadar çok SRV'ye erişim, Katman 2 düzeyinde kaynak bağlamayı gerektirir. Metal, bağımsız değişken arabelleği başına yalnızca yaklaşık 500.000 kaynağı destekler, dolayısıyla Katman 2 kaynak bağlama mümkün değildir. Metalin yarım milyon sınırı Vulkan tanımlayıcı indekslemesi için yeterli ancak D3D12 için yeterli değil. Bu sınırlama, CrossOver Mac'in Tier 2 bağlamayı destekleyemeyeceği ve dolayısıyla birçok DirectX 12 oyununun çalışmayacağı anlamına gelir.

Bu zorluklara rağmen CodeWeavers, DirectX 12 oyunlarının ve uygulamalarının gelecekteki CrossOver 23 güncellemesiyle Mac'te işlevsel olabileceğinden umutlu. CrossOver'ın yeni ana sürümleri genellikle yıllık bazda gerçekleşir, dolayısıyla bu muhtemelen 2023'te olacaktır.

CrossOver'ı kullanmasanız bile CodeWeavers tarafından geliştirilen uyumluluk geliştirmelerinin çoğu Wine projesine geri gönderilir. Bu, şirketin çalışmasının Lutris'teki Windows oyunlarının geliştirilmesine yardımcı olabileceği anlamına geliyor. Steam Deck konsolu, PlayOnLinux ve Wine'a dayalı diğer projeler. Bununla birlikte, tam DirectX 12 desteği geldiğinde CrossOver, Windows oyunlarını Steam dışında Linux'ta oynamak için cazip bir seçim olabilir.