Публикувано издание на проекта D7VK 1.12, който развива реализирането на графични API Direct3D 3, 5, 6 и 7, предложени от компанията Microsoft през 1996, 1997, 1998 и 1999 година. D7VK работи чрез транслация на повиквания към API Vulkan и позволява с помощта на Wine да стартирате ретро игри, зависещи от API Direct3D 3, 5, 6 и 7 на Linux. Кодът на проекта е написан на C++ и се разпространява под лицензия Zlib. Като основа за разработката е използван кодът на бекенда d3d9 от проекта DXVK — D7VK преобразува API Direct3D 3, 5, 6 и 7 в повиквания Direct3D 9, които след това се трансформират в API Vulkan. Разработчикът не възнамерява да включи D7VK в състава на DXVK, както беше с реализациите на Direct3D 8 и Direct3D 9 над Vulkan.
В новото издание:
- Реализирана е серия оптимизации на производителността, основно касаещи кода на API, изпълняван на CPU. Резултатите на D3D6 в теста 3DMark 99 Max нараснаха от 70685 точки в D7VK 1.2 до 75283 в D7VK 1.12, а D3D7 в теста 3DMark 2000 v1.1 от 45267 в D7VK 1.0 до 69566 в D7VK 1.12. В отделни случаи направените микрооптимизации доведоха до значително повишаване на FPS на системи със слаби CPU, например, в играта Unreal Tournament FPS нарасна от 256 до 484, а натоварването на GPU намаля от 37% до 18%.
- Оптимизирана е реализацията на прозрачността на базата на ключов цвят (Color Key) без използване на пълен алфа-канал.
- В D3D6/5/3 са оптимизирани преобразованията на цвета при почистване на вюпорта.
- С цел намаляване на броя използвани дескриптори (handles) задействането на дескриптори за текстури и материали вече се извършва след запитване от приложението, а не в момента на създаване на текстура или материал.
- Преход към работа върху версия DXVK 3.0.1.
- Направени са корекции, които подобряват поддръжката на игри Matrox TechDemo 3D, Star Trek: Starfleet Academy и The Sims: Complete Collection.
Източник: opennet.ru
