การเปิดตัว DXVK 1.10 และ VKD3D-Proton 2.6, การใช้งาน Direct3D สำหรับ Linux

การเปิดตัวเลเยอร์ DXVK 1.10 พร้อมให้ใช้งาน DXGI (โครงสร้างพื้นฐานกราฟิก DirectX), Direct3D 9, 10 และ 11 ทำงานผ่านการแปลการโทรไปยัง Vulkan API DXVK ต้องการไดรเวอร์ที่รองรับ Vulkan 1.1 API เช่น Mesa RADV 20.2, NVIDIA 415.22, Intel ANV 19.0 และ AMDVLK สามารถใช้ DXVK เพื่อเรียกใช้แอปพลิเคชันและเกม 3 มิติบน Linux โดยใช้ Wine ซึ่งเป็นทางเลือกที่มีประสิทธิภาพสูงกว่าการใช้งาน Direct3D 9/10/11 ในตัวของ Wine ซึ่งทำงานบน OpenGL

การเปลี่ยนแปลงที่สำคัญ:

  • ลบตัวจัดการการซิงโครไนซ์เธรดที่ไม่จำเป็นซึ่งใช้เมื่อโหลดทรัพยากรในการใช้งาน D3D11 และ D3D9 การเปลี่ยนแปลงนี้ได้ปรับปรุงประสิทธิภาพของ Assassin's Creed: Origins และเกมอื่น ๆ ที่ใช้เอนจิ้น AnvilNext อย่างมีนัยสำคัญ และยังส่งผลเชิงบวกต่อประสิทธิภาพของ Elex II, God of War และ GTA IV
  • ปรับการใช้ D3D11_MAP_WRITE ให้เหมาะสมสำหรับทรัพยากรที่โหลดลงใน GPU ซึ่งปรับปรุงประสิทธิภาพของเกม Quantum และแอปพลิเคชันอื่น ๆ
  • ปรับการดำเนินการ UpdateSubresource ให้เหมาะสมสำหรับการอัพเดตบัฟเฟอร์คงที่ขนาดเล็ก การเปลี่ยนแปลงนี้ส่งผลดีต่อประสิทธิภาพของ God of War และเกมอื่นๆ ด้วย
  • การประมวลผลการโหลดทรัพยากรและบัฟเฟอร์ระดับกลางใน D3D11 ได้รับการเร่งขึ้น การเปลี่ยนแปลงนี้ช่วยลดภาระของ CPU ในบางเกม
  • เพิ่มข้อมูลไปยัง debug HUD ที่เป็นประโยชน์สำหรับการวินิจฉัยปัญหาด้านประสิทธิภาพ เช่น ข้อมูลเวลา
  • รหัสการซิงโครไนซ์ GPU ถูกตัดออกจากการใช้วงจรการรอที่ยุ่ง ซึ่งทำให้การใช้พลังงานบนอุปกรณ์มือถือในบางเกมลดลง
  • เพิ่มต้นขั้วสำหรับการเรียก 3D11On12CreateDevice ซึ่งก่อนหน้านี้ทำให้แอปพลิเคชันขัดข้อง
  • ประสิทธิภาพของเกม Total War: Warhammer III, Resident Evil 0/5/6, Resident Evil: Revelations 2 ได้รับการปรับปรุงแล้ว
  • ปัญหาได้รับการแก้ไขแล้วในเกม ArmA 2, Black Mesa, Age of Empires 2: Definitive Edition, Anno 1800, Final Fantasy XIV, Nier Replicant, The Evil Within

นอกจากนี้ Valve ยังได้เผยแพร่การเปิดตัว VKD3D-Proton 2.6 ซึ่งเป็นทางแยกของโค้ดเบส vkd3d ที่ออกแบบมาเพื่อปรับปรุงการรองรับ Direct3D 12 ในตัวเปิดเกม Proton VKD3D-Proton รองรับการเปลี่ยนแปลง การเพิ่มประสิทธิภาพ และการปรับปรุงเฉพาะของ Proton เพื่อประสิทธิภาพที่ดีขึ้นของเกม Windows ที่ใช้ Direct3D 12 ซึ่งยังไม่ได้นำมาใช้ในส่วนหลักของ vkd3d ท่ามกลางความแตกต่างต่างๆ ยังมุ่งเน้นไปที่การใช้ส่วนขยาย Vulkan สมัยใหม่และความสามารถของไดรเวอร์กราฟิกรุ่นล่าสุดเพื่อให้เข้ากันได้อย่างสมบูรณ์กับ Direct3D 12

ในเวอร์ชันใหม่:

  • ปัญหาใน Horizon Zero Dawn, Final Fantasy VII: Remake และ Warframe, Guardians of the Galaxy, Elden Ring และ Age of Empires: IV ได้รับการแก้ไขแล้ว
  • DXIL ได้ปรับปรุงโค้ดเชเดอร์ที่สร้างขึ้นสำหรับการโหลดแบบเวกเตอร์และการดำเนินการจัดเก็บ
  • ลดภาระของ CPU เมื่อคัดลอกคำอธิบาย
  • ไลบรารีไปป์ไลน์ D3D12 ได้รับการเขียนใหม่เพื่อให้แคชของมุมมอง SPIR-V ที่สร้างจาก DXBC/DXIL การเปลี่ยนแปลงนี้ช่วยให้โหลดเกมได้เร็วขึ้นเช่น Monster Hunter: Rise, Guardian of the Galaxy และ Elden Ring
  • โมเดลเชเดอร์ 6.6 ได้รับการติดตั้งใช้งานอย่างสมบูรณ์ รวมถึงการรองรับการเข้าถึงโดยตรงไปยัง ResourceDescriptorHeap[] การดำเนินการอะตอมมิก 64 บิต วิธี IsHelperLane() ตัวเชเดอร์การคำนวณที่ได้รับ คุณลักษณะ WaveSize และอินทรินซิกทางคณิตศาสตร์แบบแพ็กเกจ (Intrinsics)

นอกจากนี้ เราสามารถสังเกตการเผยแพร่โดย Valve ของ SteamOS Devkit Service และโค้ดไคลเอนต์ SteamOS Devkit ด้วยการใช้งานเซิร์ฟเวอร์และไคลเอนต์ที่อนุญาตให้คุณดาวน์โหลดแอสเซมบลีของเกมของคุณเองได้โดยตรงจากคอมพิวเตอร์ของคุณไปยัง Steam Deck รวมทั้งดำเนินการ การดีบักและงานอื่น ๆ ที่เกี่ยวข้องที่เกิดขึ้นระหว่างกระบวนการพัฒนา

ที่มา: opennet.ru

เพิ่มความคิดเห็น