DXVK สามารถใช้เพื่อเรียกใช้แอปพลิเคชัน 3D และเกมบน Linux โดยใช้ Wine
รุ่นใหม่ของแหลม DXVK 2.2 พร้อมใช้งานแล้ว และมาพร้อมกับการเปลี่ยนแปลงที่น่าสนใจ ซึ่งเราสามารถเน้นการรองรับความเข้ากันได้กับ D3D11On12 เช่นเดียวกับการนำเสนอบางส่วนของ D3D9 การแก้ไขจุดบกพร่อง และอื่นๆ
สำหรับผู้ที่ยังไม่ทราบเกี่ยวกับ DXVKพวกเขาควรรู้ว่ามันคืออะไร หนึ่งในเครื่องมือที่รวมอยู่ในฟังก์ชัน Steam Play จาก Steam เป็นเครื่องมือที่ยอดเยี่ยมมากe สามารถแปลงการโทรกราฟิก Microsoft DirectX 11 และ DirectX 10 เป็น Vulkan ซึ่งเป็น API กราฟิกโอเพนซอร์สที่เข้ากันได้กับ Linux ในการใช้ DXVK นอกเหนือจาก Wine และ Vulkan แล้วคุณต้องมี GPU ที่เข้ากันได้กับ Vulkan
คุณสมบัติใหม่หลักของ DXVK 2.2
ในเวอร์ชันใหม่ที่นำเสนอของ DXVK 2.2 เราพบว่าเพิ่มการรองรับเลเยอร์ D3D11On12ที่ อนุญาตให้ Direct3D 11 ทำงานบน Direct3D 12. เพื่อรองรับ D3D12 ในเกมใหม่ที่ใช้เอนจิ้น Unity เช่น Lego Builder's Journey DXVK ได้ใช้ความสามารถในการสร้างอุปกรณ์ D3D11 จากอุปกรณ์ D3D12 โดยใช้ฟังก์ชัน D3D11On12CreateDevice และ ID3D11On12Device API
การเปลี่ยนแปลงอีกประการหนึ่งที่โดดเด่นในเวอร์ชันใหม่นี้คือไฟล์ การใช้งาน Direct3D 9 แนะนำ รองรับการแสดงผลบางส่วน ซึ่งช่วยให้จัดระเบียบการแสดงส่วนต่างๆ ของหน้าต่างโดยการคัดลอกเนื้อหาของแบ็คบัฟเฟอร์ลงในหน่วยความจำระบบ แล้ววาดไปยังหน้าต่าง CPU สิ่งนี้ช่วยปรับปรุงความเข้ากันได้กับตัวเรียกใช้งานเกม โดยเฉพาะตัวที่ใช้ WPF Toolkit ของ Microsoft และวิชวลโนเวลบางตัว
ฟังก์ชั่นนี้ ปรับปรุงความเข้ากันได้กับตัวเรียกใช้เกมที่สร้างขึ้นด้วย ไมโครซอฟต์ WPF ด้วยต้นทุนของประสิทธิภาพที่ลดลง สำหรับ Direct3D 9 นั้น พฤติกรรมทั่วไปของ virtual framebuffers (SwapChain) ก็ได้รับการปรับปรุงเช่นกัน และการสนับสนุนสำหรับตัวเลือก d3d9.noExplicitFrontBuffer ก็ถูกลบออกไป
นอกจากนี้ ยังเน้นย้ำว่า เมื่อใช้กับ Proton หรือ Wine โดยค่าเริ่มต้น, การสร้างล็อกไฟล์จะหยุดลงและ เอาต์พุตของข้อความการวินิจฉัยไปยังคอนโซลได้รับการจัดระเบียบโดยใช้คุณสมบัติเฉพาะของไวน์ซึ่งสอดคล้องกับพฤติกรรมของ vkd3d-proton หากต้องการดำเนินการสร้างไฟล์บันทึกแยกกันต่อ คุณสามารถตั้งค่าตัวแปรสภาพแวดล้อม DXVK_LOG_PATH
ของ การเปลี่ยนแปลงอื่น ๆ ที่โดดเด่น:
- ลดการใช้หน่วยความจำอย่างมากเมื่อสร้างอุปกรณ์ D3D11 ที่ไม่ได้ใช้ในเกม
- แก้ไขปัญหาที่เธรดไม่ถูกทำลายอย่างถูกต้อง
- แก้ไขข้อผิดพลาดในการตรวจสอบความถูกต้องของ Vulkan ที่เกิดจากการติดตามเลย์เอาต์ที่ไม่ถูกต้องเมื่อเปิดใช้งานลูปป้อนกลับสำหรับพื้นผิว
- ลดการใช้หน่วยความจำอย่างมากในสถานการณ์ที่เกมสร้างอุปกรณ์ D3D11 ที่ไม่ได้ใช้
ในที่สุด หากคุณสนใจที่จะทราบข้อมูลเพิ่มเติม เกี่ยวกับรุ่นใหม่นี้คุณสามารถตรวจสอบรายละเอียดได้ ในลิงค์ต่อไปนี้.
จะเพิ่มการรองรับ DXVK ให้กับ Linux ได้อย่างไร?
DXVK สามารถใช้เพื่อเรียกใช้แอปพลิเคชันและเกม 3D บน Linux โดยใช้ Wine ซึ่งทำหน้าที่เป็นทางเลือกที่มีประสิทธิภาพสูงกว่าการใช้งาน Direct3D 11 ในตัวของ Wine ที่ทำงานบน OpenGL
DXVK ต้องการ Wine เวอร์ชันเสถียรล่าสุด วิ่ง. ดังนั้นหากคุณไม่ได้ติดตั้ง ตอนนี้เราจะต้องดาวน์โหลดแพ็คเกจ DXVK ที่เสถียรล่าสุดเท่านั้นซึ่งเราพบ ในลิงค์ต่อไปนี้.
wget https://github.com/doitsujin/dxvk/releases/download/v2.2/dxvk-2.2.tar.gz
หลังจากทำการดาวน์โหลดตอนนี้เราจะทำการคลายซิปแพคเกจที่เพิ่งได้รับซึ่งสามารถทำได้จากสภาพแวดล้อมเดสก์ท็อปของคุณหรือจากเทอร์มินัลเองโดยใช้คำสั่งต่อไปนี้
tar -xzvf dxvk-2.2.tar.gz
จากนั้นเราจะเข้าถึงโฟลเดอร์ด้วย:
cd dxvk-2.2
และเราดำเนินการคำสั่ง sh เพื่อ เรียกใช้สคริปต์การติดตั้ง:
sudo sh setup-dxvk.sh install
setup-dxvk.sh install --without-dxgi
เมื่อติดตั้ง DXVK ในคำนำหน้าของ Wine ข้อดีคือ Wine vkd3d สามารถใช้สำหรับเกม D3D12 และ DXVK สำหรับเกม D3D11
นอกจากนี้สคริปต์ใหม่ยังอนุญาตให้ติดตั้ง dll เป็นลิงก์สัญลักษณ์ทำให้ง่ายต่อการอัปเดต DXVK เพื่อรับคำนำหน้า Wine เพิ่มเติม (คุณสามารถทำได้โดยใช้คำสั่ง –symlink)
คุณจะเห็นโฟลเดอร์ได้อย่างไร DXVK มี dll อีกสองตัวสำหรับ 32 และ 64 บิต estas เราจะจัดวางตามเส้นทางต่อไปนี้
โดยที่ "ผู้ใช้" คุณจะแทนที่ด้วยชื่อผู้ใช้ที่คุณใช้ในการแจกจ่าย Linux ของคุณ
สำหรับ 64 บิตเราใส่ไว้ใน:
~/.wine/drive_c/windows/system32/
O
/home/”usuario”/.wine/drive_c/windows/system32/
และสำหรับ 32 บิตใน:
~/.wine/drive_c/windows/syswow64
O
/home/”usuario”/.wine/drive_c/windows/system32/
เป็นคนแรกที่จะแสดงความคิดเห็น