Linux Adictos David Naranjo  

DXVK por fin alcanza la versión 1.0 y estas son sus novedades


DXVK (también conocido como DirectX to Vulkan) es una de las herramientas incluidas en la función Steam Play de Steam.

Es una herramienta fantástica que puede convertir las llamadas gráficas de Microsoft DirectX 11 y DirectX 10 a Vulkan, la API de gráficos de código abierto que es compatible con Linux. Para utilizar DXVK, además de Wine y Vulkan, obviamente necesitará una GPU compatible con Vulkan.

Si bien DXVK aun que se usa principalmente en Steam Play, no es el único lugar donde los usuarios de Linux pueden aprovechar esta fantástica tecnología.

También aporta la implementación D3D11 basada en Vulkan para Linux y Wine, en lo que respecta al rendimiento y la optimización cuando se ejecutan juegos de Direct3D 11 en Wine puesto que también brindan soporte para Direct3D9.

D3D9 para DXVK no debe confundirse con las iniciativas de VK9 para el soporte de D3D9 asignadas a Vulkan, ya que se trata de una iniciativa separada que aún se encuentra en desarrollo.

D3D9 propone a soporte DXVK para convertir las llamadas de la API de D3D9 a D3D11, y luego utilizará la conversión de D3V11 a Vulkan incorporada en DXVK.

Que básicamente es casi la misma idea que la conversión DXUP para D3D10 a D3D11, por lo que se puede convertir a Vulkan a través de DXVK.

Sobre la nueva versión 1.0 de DXVK

Recientemente DXVK ha alcanzado la versión 1.0 que incluye mejoras de rendimiento para varios juegos y un nuevo script de configuración.

Esta última versión añade una opción para mostrar las características soportadas ( nivel de funciones ) en HUD DXVK.

Además, con esta versión se usan dos nuevas extensiones Vulkan (VK_EXT_memory_prioritye VK_EXT_memory_budget), si están disponibles.

Estas extensiones mejoran el comportamiento de las aplicaciones cuando hay poca memoria disponible y señalan el VRAM disponible con mayor precisión a las aplicaciones con lo cual se mejora de la gestión de la sobrecarga de la CPU.

DXVK 1.0 también presenta mejoras específicas para algunos juegos, incluyendo:

  • Resident Evil 2: habilitó la opción d3d11.relaxedBarrierspara mejorar el rendimiento hasta un 10% en ciertos escenarios. Habilitar esta opción puede causar problemas con otros juegos, así que ten cuidado al habilitarla.
  • Overwatch: corrige los problemas relacionados con las sombras gracias a la extensión VK_EXT_depth_clip_enable.
  • Far Cry 3/4 / Primal / Blood Dragon: corrige los artefactos molestos.
  • Final Fantasy XIV
  • Heroes of the Storm
  • Monster Hunter World

¿Cómo añadir el soporte de DXVK a Linux?

Como fue mencionado al inicio es importante que nuestra GPU sea compatible con la API de Vulkan. Por lo que, si no tienes idea, debes visitar la página web del fabricante de tu GPU para verificar las compatibilidades.

Es importante mencionar que DXVK requiere de la última versión estable de Wine (también conocida como Wine Staging) para ejecutarse. Por lo que, si no cuentas con este instalado, puedes visitar el siguiente enlace en donde te mostramos a cómo hacerlo.

Ahora solo tendremos que descargar el último paquete estable de DXVK, este lo encontramos en el siguiente enlace. El paquete lo podremos descargar con ayuda del comando wget. En una terminal vamos a teclear el siguiente comando:

wget https://github.com/doitsujin/dxvk/releases/download/v1.0/dxvk-1.0.tar.gz

Después de haber realizado la descarga ahora vamos a descomprimir el paquete recién obtenido, esto lo pueden hacer con desde su entorno de escritorio o desde la misma terminal ejecutando en el siguiente comando:

tar -xzvf dxvk-1.0.tar.gz

Después accedemos a la carpeta con:
cd dxvk-1.0
Y ejecutamos el comando sh para ejecutar el script de instalación:

sudo sh setup-dxvk.sh install

Gracias a un nuevo script de Bash es posible usar Wine DXGI en lugar de la implementación provista por DXVK.
Para hacer esto, debe dar el siguiente comando:

setup-dxvk.sh install --without-dxgi

Cuando instale DXVK en un prefijo de Wine. La ventaja es que se puede usar Wine vkd3d para juegos D3D12 y DXVK para juegos D3D11.

Además, la nueva secuencia de comandos le permite instalar la dll como enlaces simbólicos, lo que facilita la actualización de DXVK para obtener más prefijos de Wine (puede hacerlo a través del comando –symlink).

Un método más sencillo es solo copiar las dll en el directorio de Wine. Como sabrán PlayOnLinux como Crossover hacen uso de Wine también. Por lo que por cada aplicación o juego suelen crear una botella con “drive_c/windows” Aquí deberán revisar su sistema un poco mas a fondo.

Como verán la carpeta de DXVK contiene otras dos que son las dll para 32 y 64 bits estas las vamos a colocar de acuerdo a las siguientes rutas.
En donde “usuario” lo remplazas por el nombre de usuario que utilizas en tu distribución de Linux.

Para 64 bits las colocamos en:

~/.wine/drive_c/windows/system32/

O

/home/”usuario”/.wine/drive_c/windows/system32/

Y para 32 bits en:

~/.wine/drive_c/windows/syswow64

O

/home/”usuario”/.wine/drive_c/windows/system32/

El artículo DXVK por fin alcanza la versión 1.0 y estas son sus novedades ha sido originalmente publicado en Linux Adictos.

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.