Lapisan terjemahan berbasis vulkan untuk Direct3d 10/11 yang memungkinkan menjalankan aplikasi 3D di Linux menggunakan anggur.
Untuk status proyek saat ini, silakan merujuk ke Wiki Proyek.
Untuk memasang paket DXVK yang diperoleh dari halaman rilis ke awalan anggur yang diberikan, jalankan perintah berikut dari dalam direktori DXVK:
export WINEPREFIX=/path/to/.wine-prefix
./setup_dxvk.sh install
Ini akan menyalin DLL ke direktori system32 dan syswow64 dari awalan anggur Anda dan mengatur overrides DLL yang diperlukan. Awalan 32-bit murni juga didukung.
Skrip Pengaturan secara opsional mengambil argumen berikut:
--symlink : Buat tautan simbolik ke file DLL alih-alih menyalinnya. Ini sangat berguna untuk pengembangan.--without-dxgi : Jangan menginstal implementasi DXGI DXVK dan menggunakan yang disediakan oleh anggur sebagai gantinya. Ini diperlukan untuk VKD3D dan DXVK untuk bekerja dalam awalan anggur yang sama. Pastikan aplikasi Anda menggunakan DXVK alih -alih WinEd3D dengan memeriksa keberadaan file log d3d11.log di direktori aplikasi, atau dengan mengaktifkan HUD (lihat catatan di bawah).
Untuk menghapus DXVK dari awalan, jalankan perintah berikut:
export WINEPREFIX=/path/to/.wine-prefix
./setup_dxvk.sh uninstall
Di dalam direktori DXVK, jalankan:
./package-release.sh master /your/target/directory --no-package
Ini akan membuat folder dxvk-master di /your/target/directory , yang berisi versi 32-bit dan 64-bit dari DXVK, yang dapat diatur dengan cara yang sama seperti versi rilis seperti yang disebutkan di atas.
Untuk melestarikan direktori pembangunan untuk pengembangan, lulus --dev-build ke naskah. Opsi ini menyiratkan --no-package . Setelah membuat perubahan pada kode sumber, Anda kemudian dapat melakukan hal berikut untuk membangun kembali DXVK:
# change to build.32 for 32-bit
cd /your/target/directory/build.64
ninja install
Build Winelib dapat dibuat dengan menambahkan argumen --winelib .
# 64-bit build. For 32-bit builds, replace
# build-win64.txt with build-win32.txt
meson --cross-file build-win64.txt --buildtype release --prefix /your/dxvk/directory build.w64
cd build.w64
ninja install
DLL D3D10, D3D11 dan DXGI akan ditempatkan di /your/dxvk/directory/bin . Pengaturan harus dilakukan secara manual dalam kasus ini.
Sebelum melaporkan masalah, silakan periksa halaman Wiki pada status driver saat ini dan pastikan Anda menjalankan versi driver yang cukup baru untuk perangkat keras Anda.
Manipulasi perpustakaan Direct3D dalam game multi-pemain dapat dianggap curang dan dapat membuat akun Anda dilarang . Ini juga dapat berlaku untuk game pemain tunggal dengan bagian multipemain yang tertanam atau khusus. Gunakan dengan risiko Anda sendiri.
Variabel lingkungan DXVK_HUD mengontrol HUD yang dapat menampilkan framerate dan beberapa penghitung stat. Ia menerima daftar opsi berikut yang dipisahkan secara koma:
devinfo : Menampilkan nama GPU dan versi driver.fps : Menunjukkan frame rate saat ini.frametimes : Menampilkan grafik waktu bingkai.submissions : Menampilkan jumlah buffer perintah yang dikirimkan per bingkai.drawcalls : Menunjukkan jumlah panggilan draw dan lulus render per bingkai.pipelines : Menunjukkan jumlah total grafik dan komputasi pipa.memory : Menunjukkan jumlah memori perangkat yang dialokasikan dan digunakan.gpuload : Menunjukkan perkiraan beban GPU. Mungkin tidak akurat.version : Menampilkan versi DXVK.api : Menampilkan level fitur D3D yang digunakan oleh aplikasi. Tidak berfungsi dengan benar untuk D3D10 saat ini.compiler : Menunjukkan aktivitas kompiler shader Selain itu, DXVK_HUD=1 memiliki efek yang sama dengan DXVK_HUD=devinfo,fps , dan DXVK_HUD=full memungkinkan semua elemen HUD yang tersedia.
Beberapa aplikasi tidak menyediakan metode untuk memilih GPU yang berbeda. Dalam hal ini, DXVK dapat dipaksa untuk menggunakan perangkat yang diberikan:
DXVK_FILTER_DEVICE_NAME="Device Name" Memilih Perangkat dengan nama perangkat Vulkan yang cocok, yang dapat diambil dengan alat -alat seperti vulkaninfo . Cocokkan pada substring, jadi "Vega" atau "AMD RadV Vega10" didukung jika nama perangkat lengkapnya adalah "AMD RadV Vega10 (LLVM 9.0.0)", misalnya. Jika substring cocok dengan lebih dari satu perangkat, perangkat pertama yang cocok akan digunakan.Catatan: Jika filter perangkat secara tidak benar, itu dapat memfilter semua perangkat dan aplikasi tidak akan dapat membuat perangkat D3D.
DXVK menyimpan keadaan pipa secara default, sehingga shader dapat dikompilasi ulang sebelumnya pada menjalankan aplikasi berikutnya, bahkan jika cache shader pengemudi sendiri dibatalkan sementara itu. Cache ini diaktifkan secara default, dan umumnya mengurangi kegagapan.
Variabel lingkungan berikut dapat digunakan untuk mengontrol cache:
DXVK_STATE_CACHE=0 menonaktifkan cache status.DXVK_STATE_CACHE_PATH=/some/directory menentukan direktori tempat untuk meletakkan file cache. Default ke direktori kerja aplikasi saat ini.Variabel lingkungan berikut dapat digunakan untuk tujuan debugging .
VK_INSTANCE_LAYERS=VK_LAYER_KHRONOS_validation memungkinkan lapisan debug vulkan. Sangat direkomendasikan untuk pemecahan masalah rendering dan crash driver. Membutuhkan Vulkan SDK untuk diinstal pada sistem host.DXVK_LOG_LEVEL=none|error|warn|info|debug Kontrol Pesan Pencatatan.DXVK_LOG_PATH=/some/directory mengubah jalur di mana file log disimpan.DXVK_CONFIG_FILE=/xxx/dxvk.conf mengatur jalur ke file konfigurasi. DXVK membutuhkan dukungan threading dari lingkungan build MINGW-W64 Anda. Jika Anda melewatkan ini, Anda dapat melihat "Kesalahan: 'Mutex' bukan anggota 'std'". Di Debian dan Ubuntu, ini biasanya dapat diselesaikan dengan menggunakan POSIX Alternate, yang mendukung Threading. Misalnya, pilih POSIX alternatif dari perintah ini (gunakan i686 untuk 32-bit):
update-alternatives --config x86_64-w64-mingw32-gcc
update-alternatives --config x86_64-w64-mingw32-g++