Başlangıçta Linux için oluşturulan DXVK, Windows'ta eski oyunları "düzeltmenize" ve performanslarını artırmanıza da yardımcı olabilir. İşte neden ve nasıl.
Direct3D, on yıllardır Windows oyunlarının bir parçası olmuştur ve bölümlere ayrılmış PC donanım ortamını tek bir 3D etkin şemsiye altında birleştirmiştir. Ancak, öncelikle Linux için oluşturulmuş bir uygulama olan DXVK, Windows kullanıyor olsanız bile bazen kullanmak için çok daha iyi bir seçenektir.
Uygulamalarınız ve oyunlarınız için daha iyi uyumluluk ve daha da önemlisi performans ister misiniz? O zaman DXVK'yı denemeniz gerekir.
Windows'ta DirectX ile İlgili Sorun
Microsoft, DirectX'i programcıların herhangi bir PC'nin donanım yeteneklerini kullanmasına yardımcı olan "birleşik bir çözüm" olarak yarattı. Yazılım geliştiriciler, her donanım parçası için farklı kod yazmak yerine DirectX'in DirectDraw (2D grafikleri), Direct3D (donanım hızlandırmalı 3D) ve DirectSound (ses) kitaplıklarını "hedefleyebilir". Ardından, Microsoft'un çözümünün kendi kodlarını her bir donanım parçasının "yerel diline" "çevirmesine" izin verin.
DirectX, Windows'ta yeri doldurulamaz bir temel teknoloji haline geldi ve o zamandan beri gelişiyor. Ancak, Direct3D ile ilgili küçük bir sorun var: %100 geriye dönük uyumlu değil.
Microsoft ve Direct3D API'yi destekleyen GPU yaratıcıları ("Nvidia, AMD ve Intel"de olduğu gibi), Direct3D'nin eski sürümlerinde tanıtılan, ancak hiçbir zaman kazanılmayan özellikler için zaman zaman destek düştü çekiş. Bu nedenle, bazı eski oyunlar Direct3D'nin en yeni sürümlerine sahip modern bir GPU'da düzgün çalışmayabilir.
Volkan nedir?
Sözde Microsoft'un kapalı kaynaklı Direct3D'sine daha "açık" bir yanıt olan OpenGL, Silicon Graphics'in grafik iş istasyonlarında kullanılan 3B grafik kitaplıklarının değiştirilmiş bir versiyonuydu.
Ancak OpenGL, Microsoft'un Direct3D'sine kıyasla özellik açısından her zaman gecikti. Sonunda, çabayı yeniden başlatmak daha mantıklı göründü. Bu nedenle, "OpenGL Next" olarak da bilinen Vulkan yaratıldı, daha iyi performans ve donanım üzerinde artırılmış kontrol sunuyor.
OpenGL gibi ve Microsoft'un Windows'a bağlı Direct3D'sinden farklı olarak, Vulkan "açık" ve çapraz platformdur. Vulkan'ı Windows, Linux ve hatta akıllı telefonlarda kullanabilirsiniz. Yerel olarak Mac'lerde desteklenmese de, orada MoltenVK aracılığıyla kullanılabilir.
Bu kısa versiyondu. Vulkan hakkında daha fazla bilgi edinmek için şu makalemize göz atın: Windows'ta Vulkan çalışma zamanı kitaplıkları nelerdir?.
DXVK Nedir?
DXVK, Direct3D'yi Vulkan'a "çeviren" bir sarmalayıcıdır. İnsan dünyasında, bir çevirmen İngilizce ve Japonca konuşanlar arasında aracı olabilir ve onların birbirlerini anlamalarını sağlayabilir. Benzer şekilde, "sarmalayıcılar" veya "çeviri katmanları", belirli bir donanım, platform veya API parçası için yazılmış kodu "alabilir" ve başka bir cihazda çalışacak şekilde çevirebilir.
DXVK orijinal olarak Linux için, onu SteamOS ve Steam Deck'te de kullanan Valve'ın desteğiyle geliştirildi. Gördüğümüz makalemizde bununla ilgili daha fazla bilgi edinebilirsiniz. Steam Proton nedir ve Windows oyunlarını Steam Deck'te nasıl çalıştırır?.
Windows'ta Neden DXVK Kullanmalısınız?
Bir oyun donanımınızda zaten düzgün çalışıyorsa, DXVK kullanmanıza gerek yoktur. Ancak DirectX'in eski sürümleri için yazılan bazı oyunlar, DirectX'in daha yeni sürümlerinde ve modern donanımlarda "doğru" (hatta hiç çalışmıyorsa) çalışmaz.
Eski ve hatalı Direct3D kodunu daha modern Vulkan API'sine "çevirerek", performansta (varsa) minimum bir zarar vardır. Aynı zamanda grafikleri bozulan veya özellikleri eksik olan sorunlu oyunlar yeniden tamamen oynanabilir hale gelebilir.
Vulkan, Direct3D 12 ile eşit olduğundan ve her ikisi de Direct3D'nin eski sürümlerinden çok daha iyi (ve daha hızlı) olduğundan (ne zaman gördüğümüz gibi). DirectX 11 ile DirectX 12'yi karşılaştırdık), eski Direct3D oyunlarını Vulkan'a "çevirmek" bazen oyunun performansını iyileştirebilir.
Intel'in Arc GPU'ları üzerindeki çalışması bunun kanıtıdır. Intel, Arc GPU sürücülerindeki her bir eski başlık için destek eklemeye çalışabilir. Bunun yerine Intel, DXVK'yi daha da geliştirmek için çalışmaya karar verdi. Intel'in "deneyinden" elde edilen ilk sonuçlar, DXVK "aracılığıyla" oynanabilir hale getirilen düzinelerce eski oyun için performansta 2 kat artışa yol açtı.
Windows'ta DXVK Nasıl Kullanılır?
DXVK'yi Windows'ta kullanmak kolaydır, çünkü ayarlanacak veya yapılandırılacak bir şey yoktur. Tek yapmanız gereken onu indirmek, oyunun doğru klasörüne çıkarmak ve gitmeye hazır.
Ancak, oyununuz tarafından kullanılan Direct3D sürümüyle eşleşen doğru DXVK sürümünü kullanmanız gerekir.
DXVK'nin en son sürümünü nasıl indirebileceğinizi, oyununuzun "teknolojisini" nasıl tanımlayabileceğinizi ve doğru DLL'leri uygun klasöre yükleyebileceğinizi görmek için tüm süreci birlikte incelersek muhtemelen daha kolay olacaktır.
DXVK Nasıl İndirilir
DXVK açık kaynaklı bir yazılımdır ve kullanımı ücretsizdir. En son sürümünü GitHub'da bulabilirsiniz.
- DXVK'leri ziyaret edin resmi GitHub sayfası ve üzerine tıklayın En sonuncu sürüm bağlantısı sayfanın sağında, altında Salıverme.
- Yayınlar sayfasında aşağı kaydırın ve Varlıklar son sürümün bölümü. İndirmek için en son DXVK tar.gz arşivine tıklayın. Yazma sırasında, sürüm 2.2 idi.
- İndirdiğiniz arşivi bir yerde saklayın, çünkü içeriğini Direct3D yerine DXVK ile çalıştırmak istediğiniz her oyunun klasörüne çıkartmanız gerekecek.
Doğru DXVK Sürümü Nasıl Seçilir?
Oyununuzun hangi Direct3D sürümünü kullandığını bilmeniz gerekiyorsa, PC Gaming Wiki web sitesi yardımcı olabilir.
- Ziyaret etmek PC Oyun Wiki tarayıcınızla ve sağ üstteki arama alanını kullanarak DXVK eklemek istediğiniz oyunu arayın.
- Oyununuzu bulduğunuzda, sayfasını ziyaret edin ve aşağıdakilere ulaşmak için aşağı kaydırın. Diğer bilgiler bölüm. Dikkatinizi API tablolarına çevirin. Orada, üzerinde Teknik özellikler Ve desteklenen sütunlarında, oyununuzun kullandığı Direct3D sürümünü göreceksiniz. Altında, yürütülebilir, 32 bit, Ve 64 bit sütunlar size hangi mimariyi seçmeniz gerektiğini "söyleyecek".
Oyunlarınıza DXVK Nasıl Eklenir?
Artık oyununuzun hangi Direct3D sürümünü ve CPU mimarisini kullandığını bildiğinize göre, DXVK'nin doğru sürümünü klasörüne ekleyebilirsiniz.
- DXVK arşivini favori arşiv yöneticinizle açın (bu makale için WinRAR kullanıyoruz) ve orada göreceğiniz tek DXVK klasörünü girin.
- İçeride, her bilgisayar mimarisi için bir tane olmak üzere iki alt klasör bulacaksınız. Oyununuz için doğru olanı girin. İşletim sisteminiz 64 bit olsa bile, günümüzün çoğu Windows sürümü gibi, oyununuz 32 bit ise, 32 bit klasörünü seçmelisiniz.
- seçin DXGI.DLL artı sürümü için doğru DLL Doğrudan 3D oyununuz kullanıyor. Göreceğiniz gibi, Direct3D'nin önceki sürümlerinin her biri için bir tane olmak üzere üç DLL daha var: 9, 10 ve 11.
- Oyununuzun kurulu olduğu yerel klasörü bulun ve yürütülebilir dosyasıyla ("oyunun çalıştığı dosya") alt klasörü bulun. Önceki adımdaki DLL'leri bu klasöre çıkarın.
Gelişmiş Oyununuzu Nasıl Test Edip Kıyaslama Yapabilirsiniz?
Oyununuzu şimdi çalıştırırsanız Direct3D yerine Vulkan kullanmalı ve umarız daha iyi performans gösterir.
Kare hızlarında herhangi bir dramatik değişiklik görmeseniz bile, bazen iyileştirmeler başka şekillerde "hissedilebilir". Örneğin, Ryzen 5900x, 64 GB RAM ve Nvidia RTX 3070 GPU ile donatılmış bir PC'de klasik Batman: Arkham City ile DXVK'yi denedik. Donanımımız zaten bu eski oyunun en iyi özelliklerini aşmıştı ve çok yüksek kare hızlarına ulaşıyordu. Vulkan ile daha da yükselseler bile aradaki fark kolay kolay hissedilmeyecek.
Ancak, oyunun aksiyonu daha yumuşak geldi. DXVK ile ekranlar arasındaki geçişler, yükleme seviyeleri ve Alt + Tab tuşlarına basmak neredeyse anında gerçekleşti.
DXVK'yı Ne Zaman Kullanmamalısınız?
DXVK'nin birçok avantajı vardır ve eski oyunların performansını modern çağa taşıyabilir. Buna rağmen, gelişmiş performans için sihirli değnek değildir ve bazen onu kullanmaya değmez.
1. DXVK, Oyunun Performansını İyileştirmez
DXVK DLL'lerini oyununuza eklediyseniz ancak daha sonra bir fark görmediyseniz, isterseniz bunları tekrar kaldırabilirsiniz. Bunu yapmak için oyunun klasörüne eklediğiniz DLL'leri silebilirsiniz.
2. DXVK Daha Kötü Performansa Neden Oluyor veya Yeni Hatalar Getiriyor
Bazen bir oyuna DXVK eklemek ters etki yapabilir. Ne yazık ki, bir son kullanıcının bu tür sorunları düzeltmesinin bir yolu yoktur.
DXVK eklendikten sonra bir oyunun performans tankı veya görsel hataları mı ortaya çıktı? Oyundan çıkın ve DXVK DLL'lerini dizininden silin.
3. Oyununuzu Çevrimiçi Oynamak İstiyorsunuz
DXVK bir uyumluluk katmanıdır ve yalnızca bir oyunun grafik çıktısını etkiler. Yine de bazı şirketler, herkes için adil bir ortam sağlamak amacıyla oyunlarında herhangi bir değişiklik yapılmasına karşı çıkıyor.
DXVK "hile" olmayabilir, ancak yine de bir "oyun modifikasyonu"dur ve bu şekilde işaretlenebilir.
4. Oyun Zaten Yerleşik Vulkan Desteğine Sahip
Doom Eternal gibi bir oyun zaten Vulkan API'sini kullanıyorsa, çıktısını Direct3D olarak ayarlamak ve ardından Vulkan'a çevirmek için hiçbir neden yoktur.
5. Oyun Direct3D 12 Kullanıyor
Direct3D 12, Vulkan ile neredeyse tamamen aynı olduğundan, ultra modern bir grafik API'sini diğerine çevirmekle elde edilecek hiçbir şey yoktur.
Windows'ta "Translated" 3D ile Eski Oyunlarınızı Geliştirin
Linux'ta Windows'a bağlı daha fazla oyun oynamanın bir yolu olarak başlayan şey, yararlı bir uyumluluk çözümü ve performans artırıcı haline geldi. Bu nedenle, yakın tarihli bir DXVK DLL arşivini el altında bulundurun. Bunları, aksaklıkları ortadan kaldırmak, performansını iyileştirmek, oyun içi eylemi daha akıcı hale getirmek ve yanıt verme hızını artırmak istediğiniz herhangi bir oyuna ekleyin.
Sonunda işe yaramasa bile, denemek yalnızca saniyeler alır ve çoğu zaman sonuçlara şaşırabilirsiniz.