Cracking Windows Open: Porting RADV to Win32
18 hours ago
- RADV 是用于 AMD GPU 的开源 Mesa Vulkan 驱动程序,在 AMD 停止其专有替代方案后,它现已成为 Linux 上事实上的 Vulkan 驱动程序。
- 将 RADV 移植到 Windows 将实现跨平台的共享代码库,便于调试,加快修复速度,并使社区贡献惠及所有用户。
- Faith Ekstrand 的初步工作通过逆向工程 WDDM2 接口,证明了可行性,成功显示了一个 3D 模型,但存在局限性。
- 该项目提高了灵活性、可移植性和稳定性,能够支持像《反恐精英2》这样的游戏,但尚未完全符合规范。
- 挑战包括硬件代际差异、MSVC 编译器不兼容以及 D3DKMT 调用中的不透明供应商特定数据。
- 最大的障碍是专有的内核驱动程序接口,该接口依赖于脆弱的逆向工程结构,且无向后兼容性保证。
- 剩余工作包括通过 DXGI 交换链改进呈现性能,可能需要 AMD 和微软的参与。
- 该项目由 Valve 赞助,旨在推动合作,以实现 Windows 上稳定开源 Vulkan 驱动程序。