Compatibilidad con Windows

Cómo habilitar la representación de Vulkan en Wine Games usando DXVK

Cómo habilitar la representación de Vulkan en Wine Games usando DXVK
DXVK es un proyecto de código abierto y gratuito que traduce llamadas Direct3D a Vulkan en Linux. Al integrarse con la capa de compatibilidad de Wine, DXVK le permite usar un renderizador Vulkan en aplicaciones y juegos Direct3D (D3D9, D3D10 y D3D11) en Linux.

DXVK funciona reemplazando los archivos "dll" de Direct3D existentes en Wine con archivos personalizados que convierten las llamadas a la API de Direct3D a Vulkan. Como resultado, puede ver gráficos mejorados, mayor rendimiento y mejor compatibilidad en aplicaciones y juegos 3D. El impacto en el rendimiento de DXVK puede ser drástico, mejorando las velocidades de cuadro generales en la mayoría de las aplicaciones y juegos 3D. Aunque puede ver resultados variados caso por caso.

Instalación de DXVK en Linux

Puede descargar la última compilación de DXVK desde su página de GitHub. Para configurar correctamente DXVK, primero debe instalar algunos paquetes y configurar un prefijo de Wine.

Para empezar, habilite los controladores Vulkan en Ubuntu ejecutando el siguiente comando:

$ sudo apt install mesa-vulkan-drivers mesa-vulkan-drivers: i386
libvulkan1 libvulkan1: i386

Reinicie su sistema para finalizar la instalación.

A continuación, deberá instalar los paquetes de vino. Te recomendaría que instales compilaciones estables de wine, pero DXVK también funcionará con compilaciones de desarrollo. Para instalar compilaciones estables de vino en Ubuntu, ejecute el siguiente comando:

$ sudo apt install wine

Tenga en cuenta que es posible que Ubuntu no tenga las últimas versiones de wine incluidas en sus repositorios. Para comprobar e instalar la última versión de Wine, siga las instrucciones disponibles aquí.

Ahora que se han instalado los paquetes necesarios, puede proceder a configurar un nuevo prefijo de Wine. Los prefijos de vino no son más que contenedores aislados para instalar aplicaciones de Windows en Linux. Es una buena idea crear un nuevo prefijo para cada aplicación o juego que instale en Wine. Dado que un prefijo no tiene nada que ver con otro, las cosas se mantienen limpias y sin fallas, lo que resulta en menos problemas de compatibilidad.

Ejecute el siguiente comando para crear un nuevo prefijo llamado "Juego" en su directorio de inicio:

$ WINEPREFIX = ”$ HOME / Game” winecfg

Puede pasar cualquier ruta a la variable WINEPREFIX, solo asegúrese de que sea una ruta completa, no relativa.

DXVK está disponible para arquitecturas de 32 y 64 bits y es importante que instale archivos DXVK para la arquitectura correcta. De forma predeterminada, Wine creará un prefijo de 64 bits. Sin embargo, puede especificar manualmente una arquitectura ejecutando cualquiera de los siguientes comandos:

$ WINEARCH = win64 WINEPREFIX = ”$ HOME / Game” winecfg
$ WINEARCH = win32 WINEPREFIX = ”$ HOME / Game” winecfg

Si ha seguido los pasos correctamente hasta ahora, ahora puede proceder a la instalación real de DXVK en un prefijo de Wine. Extraiga el archivo DXVK descargado y ejecute el siguiente comando desde la carpeta extraída para hacer que el script de configuración sea ejecutable:

$ chmod + x setup_dxvk.sh

Con la variable WINEPREFIX especificada, ejecute un comando en el siguiente formato:

$ WINEPREFIX = ”$ HOME / Juego” ./ setup_dxvk.sh instalar

Puede reemplazar el valor de WINEPREFIX con su propia ruta. Espere unos segundos a que finalice la instalación.

Para desinstalar DXVK, ejecute el siguiente comando:

$ WINEPREFIX = ”$ HOME / Juego” ./ setup_dxvk.sh desinstalar

Cómo confirmar si DXVK está funcionando en una aplicación o un juego?

Después de la instalación de DXVK, es posible que desee comprobar si las bibliotecas DXVK y Vulkan se están utilizando correctamente en el juego. Para hacerlo, anteponga su comando de vino con la variable de entorno "DXVK_HUD = 1".

$ WINEPREFIX = ”$ HOME / Game” DXVK_HUD = 1 lanzador de vino.exe

Si DXVK está instalado correctamente y se está utilizando en su juego Direct3D, verá un FPS HUD en la esquina superior izquierda de la pantalla:

Puede personalizar la pantalla del HUD utilizando varios valores separados por comas que se explican aquí.

En caso de que no desee utilizar DXVK HUD, puede confirmar desde la salida del terminal si se está invocando DXVK o no. El siguiente resultado muestra el uso de DXVK en un juego después de ejecutar un lanzador "exe" en un prefijo de Wine:

información: DXVK: v1.7.1
información: Proveedores de extensión integrados:
información: Win32 WSI
información: OpenVR
advertir: OpenVR: no se pudo ubicar el módulo
información: extensiones de instancia habilitadas:
información: VK_KHR_surface
información: VK_KHR_win32_surface
advertir: D3D9: VK_FORMAT_D24_UNORM_S8_UINT -> VK_FORMAT_D32_SFLOAT_S8_UINT
advertir: D3D9: VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT -> VK_FORMAT_B4G4R4A4_UNORM_PAC

Conclusión

El proyecto DXVK ha dado un gran impulso a los juegos no nativos en Linux. Su profunda integración con Wine ha dado como resultado mejoras masivas en el rendimiento en muchos juegos. DXVK se ha integrado completamente en la capa de compatibilidad Proton de Steam, que a su vez se basa en Wine. Si está utilizando Steam para descargar y jugar juegos compatibles con Windows, automáticamente obtendrá soporte para DXVK a través de Proton.

Cómo usar AutoKey para automatizar juegos de Linux
AutoKey es una utilidad de automatización de escritorio para Linux y X11, programada en Python 3, GTK y Qt. Usando su funcionalidad de scripting y MAC...
Cómo mostrar el contador de FPS en juegos de Linux
Los juegos de Linux obtuvieron un gran impulso cuando Valve anunció el soporte de Linux para el cliente Steam y sus juegos en 2012. Desde entonces, mu...
Cómo descargar y jugar Sid Meier's Civilization VI en Linux
Introducción al juego Civilization 6 es una versión moderna del concepto clásico introducido en la serie de juegos Age of Empires. La idea era bastant...