D8VK การใช้งาน Direct3D 8 สำหรับ DXVK

ดี8วีเค

D8VK คือการใช้งาน Direct3D 8 ที่ให้คุณเรียกใช้แอปพลิเคชัน 3 มิติบน Linux โดยใช้ Wine

ไม่กี่วันที่ผ่านมา มีการประกาศเปิดตัวเวอร์ชันเสถียรแรกของโครงการ "D8VK 1.0" เสนอ การใช้งาน API กราฟิก Direct3D 8 ซึ่งทำงานผ่านการแปลการเรียก Vulkan API และอนุญาตให้คุณใช้ Wine หรือ Proton เพื่อเรียกใช้แอปพลิเคชันและเกม 3 มิติที่พัฒนาสำหรับ Windows บน Linux ที่เชื่อมโยงกับ Direct3D 8 API

อย่างที่หลายๆ คนทราบ ใน Linux เรามี VKD3D-Proton สำหรับการแปล Direct3D 12 ใน Vulkan นอกจากนั้นเรายังมี Steam Play ที่ใช้ DXVK เพื่อใช้งาน Direct3D 9/10/11 APIs บน Vulkan แต่สำหรับอันเก่า . การดำเนินการของ Direct3D 8 ไม่มีอะไรเป็นรูปธรรม

นั่นคือเหตุผลที่ D8VK ถือกำเนิดขึ้น ซึ่งเป็นการนำ Microsoft Direct3D 8 API แบบเก่ามาใช้เหนือ Vulkan เพื่อปรับปรุงประสบการณ์ของเกมรุ่นเก่า

D8VK 1.0 ถูกระบุว่าเป็นรุ่นแรกของโครงการ เหมาะสำหรับการใช้งานและการทดสอบในหลายร้อยเกม เมื่อเปรียบเทียบกับโครงการ WineD3D และ d3d8to9 ซึ่งใช้การแปล Direct3D 8 เป็น OpenGL และ Direct3D 9 โครงการ D8VK แสดงให้เห็นถึงประสิทธิภาพ ความเสถียร และความเข้ากันได้กับเกมที่ดีกว่า

ตัวอย่างเช่น เมื่อทดสอบบนแพ็คเกจ 3DMark 2001 SE โครงการ D8VK ได้คะแนน 144660 คะแนน การรวมกันของ d3d8to9 และ dxvk – 118033 และ WineD3D – 97134

การเปิดตัวของ D8VK 1.0 แนะนำ d3d8.dll(d3d9 เชื่อมโยงแบบคงที่) เช่นเดียวกับไฟล์ โปรเซสเซอร์แบทช์แบบกำหนดเองใหม่ สำหรับบางเกมที่มีพฤติกรรมที่ไม่ได้กำหนด

นอกจากนี้ ยังเน้นย้ำว่า รองรับการประกาศ Vertex Shader สำหรับเกมที่มีลักษณะการทำงานที่ไม่ได้กำหนด และบัฟเฟอร์จุดยอดนั้นสามารถเก็บไว้ในพูลที่จัดการด้วยตนเองเพื่อปรับปรุงประสิทธิภาพและหลีกเลี่ยงปัญหาลำดับการเขียน

มีข้อสังเกตด้วยว่าการสนับสนุนคอมไพล์ถูกนำมาใช้ใน MSVC เช่นเดียวกับการสนับสนุนการสืบค้น GetInfo และประเภทบล็อกสถานะ

ของคนอื่น การเปลี่ยนแปลงที่โดดเด่น:

  • แก้ไขขนาดคำอธิบายพื้นผิวตามรูปแบบ
  • อนุญาตให้รักษาการติดตั้ง Proton ปัจจุบัน
  • การตั้งค่าเฉพาะเกมจำนวนนับไม่ถ้วนและคุณสมบัติเล็กน้อยและการปรับแต่ง
  • แก้ไขข้อบกพร่องที่ CreateTexture จะพยายามรวมพื้นผิวที่เป็นค่าว่าง
  • แก้ไขแบ็คบัฟเฟอร์ที่ไม่ถูกแคชหรืออ้างอิงไปยังอุปกรณ์ที่เป็นเจ้าของ
  • แก้ไขพื้นผิว สตรีม และดัชนีที่ไม่ถูกล้างเมื่อรีบูต
  • แก้ไขตำแหน่งของ Direct3DCreate8 ใน d3d8.def
  • จำนวนการอ้างอิงคงที่สำหรับเป้าหมายการเรนเดอร์ เทมเพลตเชิงลึก และพื้นผิว
  • แก้ไข null pixel shaders ที่ไม่ถูกจดจำ
  • แก้ไขเป้าหมายการเรนเดอร์และเทมเพลตเชิงลึกที่ไม่ถูกแคช
  • แก้ไขข้อบกพร่องหากไคลเอนต์พยายามเปิดใช้งาน SWVP บนอุปกรณ์ฮาร์ดแวร์
  • แก้ไขอุปกรณ์ที่ไม่เจลเบรก
  • แก้ไข segfault ในการเปิดตัวอุปกรณ์ด้วยพื้นผิวที่ถูกผูกไว้

สุดท้ายนี้ หากคุณสนใจที่จะทราบข้อมูลเพิ่มเติม สามารถปรึกษารายละเอียดได้ ในลิงค์ต่อไปนี้.

คุณควรทราบว่ารหัสโครงการเขียนด้วยภาษา C++ และเผยแพร่ภายใต้ลิขสิทธิ์ Zlib ฐานรหัสของโครงการ DXVK พร้อมการใช้งาน Direct3D 9, 10 และ 11 ที่ด้านบนของ Vulkan ถูกใช้เป็นพื้นฐานสำหรับการพัฒนา

จะติดตั้ง D8VK บน Linux ได้อย่างไร?

สำหรับผู้ที่สนใจสามารถติดตั้ง D8VK ได้ พวกเขาควรทราบว่าการติดตั้งนั้นค่อนข้างง่ายและไม่ต้องการอะไรมากมาย เพียงเปิดเทอร์มินัลเพื่อรับเวอร์ชันใหม่ ในนั้นเราจะพิมพ์คำสั่งต่อไปนี้:

git clone https://github.com/AlpyneDreams/d8vk.git

หรือหากคุณต้องการดาวน์โหลดจากเบราว์เซอร์ของคุณ (คุณเพียงแค่คลายซิปไฟล์และวางตำแหน่งตัวเองในเทอร์มินัลภายในโฟลเดอร์) คุณสามารถทำได้โดยคลิก ในลิงค์นี้

เสร็จแล้วตอนนี้เราจะเข้าสู่ไดเร็กทอรีด้วย:

cd d8vk

และเราดำเนินการติดตั้ง d8vk แล้วแต่กรณี ในการนำไปใช้กับไวน์ เราต้องพิมพ์สิ่งต่อไปนี้:

./setup_d3d8.sh install --no-proton

หรือในกรณีที่ต้องการนำไปใช้กับ Proton ต้องพิมพ์คำสั่งดังนี้

./setup_d3d8.sh install

หากคุณต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับการใช้งานหรือการติดตั้งสำหรับบางกรณี คุณสามารถปรึกษาได้ ลิงค์ต่อไปนี้


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. รับผิดชอบข้อมูล: AB Internet Networks 2008 SL
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา