
D8VK traduce Direct3D 8 a Vulkan, al igual que DXVK para Direct3D 9/10/11 y VKD3D-Proton para Direct3D 12 usado con Wine y Proton en Linux y Steam Deck. Es fantástico ver el progreso en esto. Informé sobre un lanzamiento anterior, pero ahora puede jugar con la versión 1.0 «lista para producción».
En las notas de la versión, el desarrollador mencionó: «Esta es la primera versión lista para producción de d8vk que se ha probado en muchos cientos de juegos con un mejor rendimiento y compatibilidad de lo que es posible con WineD3D o d3d8to9».
El desarrollador también ha incluido algunos puntos de referencia en 3DMark 2001 SE para mostrar la diferencia de rendimiento entre diferentes traducciones:
| Actuación | VinoD3D | d3d8to9 + dhvk (2.1) | d8vk |
|---|---|---|---|
| Controlar | 97134 | 118033 | 144660 |
| Persecución de autos – Bajo | 1409.1fps | 2075,5fps | 2017,5 fps |
| Persecución de coches – alta | 352,1 fps | 148,9 fps | 553,8 fps |
| Dragótico – Bajo | 1510.4fps | 1853.3fps | 2016,9 fps |
| Dragótico – Alto | 807.6fps | 792,3fps | 1167.4fps |
| Vestíbulo – bajo | 1278.5fps | 1528.5fps | 1545.7fps |
| Vestíbulo – Alto | 585,6 fps | 523,3fps | 778,4fps |
| Naturaleza | 1012,4 fps | 1708.6fps | 1943.4fps |
| Tasa de relleno: textura única | 80163.2 Mtexels/s | 64208.1 Mtexels/s | 62904.5 Mtexels/s |
| Tasa de relleno – Multitexturizado | 159903,7 Mtexels/s | 97900.4 Mtexels/s | 96772.7 Mtexels/s |
| Conteo alto de poli (1 luz) | 1335,1 mtrix/s | 2217,0 mtrix/s | 2375,5 mtrix/s |
| High Poly Count (8 luces) | 1267,6 mtrix/s | 2092,4 mtrix/s | 1853,5 mtrix/s |
| Visualización en relieve del entorno. | 526,9 fps | 1430.8fps | 2333.4fps |
| Mapeo DOT3 (regular) | 2025,1fps | 1608.9fps | 2331.6fps |
| Sombreador de vértices | 727,2 fps | 788.7fps | 846,9 fps |
| Sombreador de píxeles | 1220.9fps | 1059.8fps | 1337.1fps |
| Sombreador de píxeles «avanzado» | 4066.1fps | 2808.6 fps (roto) | 2544,7fps |
| sprites de puntos | 1193,9 millones de sprites/s | 1071,4 millones de sprites/s | 987,5 millones de sprites/s |
Entonces, está claro que hay algunos casos en los que el D8VK perdió, pero para la versión 1.0 original, ese es un número muy bueno. Con suerte, también recibirá actualizaciones con el tiempo para que todos podamos disfrutar de juegos aún más clásicos con un gran rendimiento en el escritorio de Linux y Steam Deck.
Principales cambios en la versión 1.0:
Cambios
- individual combinado
d3d8.dll(d3d9 vinculado estáticamente)- Nuevo dispensador personalizado para algunos juegos intensivos de sorteo
- Soporte para anular la declaración del sombreador de vértices para juegos con comportamiento indefinido.
- Los búferes de vértices ahora se pueden almacenar automáticamente en un grupo administrado para mejorar el rendimiento y evitar problemas de orden de escritura.
- Implementado
beminstrucción- Soporte de compilación en MSVC
- Las dimensiones correctas de la descripción de la superficie según el formato.
- Los tipos de bloque de estado ahora son compatibles y deben capturar el estado apropiado.
- Permitir que la instalación actual de Proton @Sid127 se guarde en el n.º 51
- Soporte para consultas GetInfo
- Innumerables configuraciones de juegos, así como pequeñas funciones y ajustes.
Error de corrección
- Se solucionó un problema por el cual la función CreateTexture intentaba envolver una textura nula.
- Utilice siempre al menos un búfer de reserva de @WinterSnowfall en el n.º 91.
- Se solucionó un problema por el cual el dispositivo propietario no almacenaba en caché ni hacía referencia a los backbuffers.
- Se corrigieron las texturas, los hilos y los índices que no se borraban al reiniciar.
- Red Faction: deshabilite el mapeo directo del búfer @WinterSnowfall en el n. ° 96.
- Se corrigió la ubicación de Direct3DCreate8 en d3d8.def.
- Se corrigió el conteo de referencias para renderizar objetivos, plantillas de profundidad y texturas.
- Se corrigieron los sombreadores de píxeles nulos que no se recordaban.
- Se corrigieron los objetivos de representación y las plantillas de profundidad que no se almacenaban en caché.
- Se corrigió un error si un cliente intentaba habilitar SWVP en un dispositivo de hardware.
- Los dispositivos fijos no se liberan
- Se corrigió el error de segmento al liberar el dispositivo con texturas enlazadas.
- Innumerables otras correcciones…
Ver más en GitHub.









