Noticias

VKD3D-Proton 3.0.1 trae muchas mejoras a los juegos de Linux para Direct3D 12 a través de Vulkan

VKD3D-Proton es un proyecto increíblemente importante que garantiza que los juegos Direct3D 12 funcionen bien en Linux/SteamOS usando Vulkan, y una nueva versión principal está en camino.

Se incluye automáticamente con Proton de Valve, por lo que no tienes que hacer nada para actualizarlo. Proton Experimental tiende a realizar cambios con bastante frecuencia. Sin embargo, si quieres probarlo en la versión actual de Proton, tenemos una guía de GamingOnLinux que te dirá qué hacer.

El desarrollador señala que la versión 3.0.1 probablemente será la última versión antes de que se agregue la compatibilidad con «VK_EXT_descriptor_heap».

En cuanto a las novedades de VKD3D-Proton 3.0.1, en realidad hay bastantes. Hay varias correcciones y mejoras para juegos específicos como Death Stranding 2, Spider Man 2, Crimson Desert, REANIMAL y otros. También es compatible con funciones adicionales de D3D12, como la creación de instancias de vista D3D12 (experimental). También hay muchas optimizaciones, algunas de las cuales son específicas para chips móviles, pero hay una serie de mejoras de rendimiento para todos los usuarios.


En la foto aparece Death Stranding 2 en Linux

¡Un trabajo increíble como siempre! Permite que las plataformas Linux jueguen una variedad de juegos, incluso algunos juegos AAA nuevos, el día de su lanzamiento.

Este es probablemente el último lanzamiento antes. VK_EXT_descriptor_heap tierra.
Hay varias razones prácticas por las que es 3.0.1 en lugar de 3.1:
pero los números no son tan importantes de todos modos.

También hay un montón de trabajo en segundo plano en un montón de identificadores.
pero no está incluido en esta versión.

Funciones

  • La creación de instancias de vista D3D12 ahora es compatible de forma experimental.
    Está incluido para un juego famoso que lo requiere, Crimson Desert (1.04+).
  • Darse cuenta VK_EXT_present_timingque proporciona una sincronización fluida de fotogramas para SyncInterval > 1, si es compatible.
  • Admite la función de dispositivo independiente.
  • Se agregó soporte para nuevas operaciones AGS WMMA requeridas para la reconstrucción y eliminación de ruido del haz FSR4 utilizado en Crimson Desert.
  • Proporcione nuevas interfaces para NVAPI más modernas y proporcione cierto soporte para funciones nativas de sombreado NVAPI.
    Por ejemplo, al actualizar dxvk-nvapi, las extensiones del proveedor para cambiar el orden de los sombreadores deberían funcionar.
  • Proporcionar nuevas interfaces para AMD AGS y brindar cierto soporte para la funcionalidad nativa de sombreado AGS utilizada en Crimson Desert.

Correcciones

  • Dejar SV_PrimitiveID para leer en más etapas de sombreado, como se esperaba.
  • Varias correcciones para NVIDIA Reflex para mejorar el rendimiento en algunos casos. [NVIDIA contrib]
    • En lugar de intentar vincular el ID de NVAPI actual con nuestro ID actual, ahora se pueden separar.
      Esto ayuda especialmente con la generación de cuadros, ya que ahora podemos señalar esta situación correctamente.
  • Varias correcciones para permitir que Turnip pase el conjunto de pruebas vkd3d-proton.
  • Varias correcciones en dxil-spirv para evitar que nuevos juegos fallen en el compilador de sombreadores.
  • Se corrigió una regresión en F1 2019/2020 donde la solución anterior en el compilador anterior no se conservaba en el nuevo código.
  • Otras correcciones de errores.

Actuación

Gran parte del trabajo de rendimiento en esta versión se centró en mostrar algo de amor por los chips móviles que dependen de
en mosaico para un rendimiento óptimo:

  • Implemente descargas diferidas y descargas para mejorar potencialmente el rendimiento, como Turnip.
  • Aproveche la opción de suspender y reanudar el procesamiento en las GPU móviles, que potencialmente puede mejorar significativamente el rendimiento.
    NOTA. La acción correcta depende del conductor y del juego. Esto no acelera mágicamente el proceso.
  • Mueva la inicialización y resolución del grupo de solicitudes para evitar interrumpir los pases de renderizado tanto como sea posible.
  • Modifique la forma en que se manejan los problemas de MSAA para que a los conductores les resulte más fácil optimizar el rendimiento.

Otras mejoras de rendimiento:

  • Implemente un sistema por lotes para ExecuteIndirect complejo donde las optimizaciones de la lista de comandos divididas existentes no funcionaron.
    Mejora el rendimiento relacionado con la GPU en varios juegos que envían spam a las actualizaciones de estado de ExecuteIndirect, como Crimson Desert, Starfield y Halo Infinite.
  • Implemente SM 6.4 dot2add usando VK_VALVE_shader_mixed_float_dot_product si es compatible.
  • Finalmente, use la cola Vulkan TRANSFER correcta para las colas COPY D3D12, si es compatible, en lugar de la cola Vulkan COMPUTE.
    RADV aún no proporciona esto de forma predeterminada, pero la cola TRANSFERENCIA ahora es la predeterminada en NVIDIA.
    lo que debería mejorar el rendimiento al transmitir recursos.

Soluciones alternativas

  • Implemente un mecanismo para aplicar soluciones basadas en el nombre del punto de entrada del sombreador en lugar de un hash.
    Esto no siempre está disponible, pero se debe evitar la rotación de jugadores, como en Storm Tides y Crimson Desert.
    que son objetivos en movimiento en relación con los hash del sombreador.
  • Solución alternativa de DispatchRays cuando el juego olvida configurar la firma raíz correctamente.
  • Solución alternativa para varios errores en el juego:
    • Sombras del Tomb Raider
    • El ascenso del Tomb Raider
    • El hombre araña 2
    • Muerte en Stranding 2
    • Guardianes de la galaxia
    • REANIMAL
    • Desierto carmesí
    • …y otros que probablemente no he mencionado
  • Omitir error de hardware en RDNA4 usando SV_ShadingRate sobre las versiones afectadas de Mesa.
    • Corregido en la versión 26.1+. La solución alternativa está deshabilitada en estas versiones.
  • Elimine la solución alternativa NULL SMEM PRT HW en AMD en versiones futuras de Mesa 26.2+.
    • Resuelve la pesadilla de hace año y medio en Monster Hunter Wilds.
  • Agregue una solución alternativa para mejorar el rendimiento del kernel de NVIDIA al esperar ID3D12Fences.
  • Deje que las GPU RDNA1 pretendan que admiten baricéntricos y VRS. Permite que Crimson Desert se ejecute en RDNA1.
  • Elimine la solución alternativa de bloqueo de envío global en NVIDIA.

Misceláneas

Eliminar rutas obsoletas para VK_NV_device_generated_commands{,_compute} y calcular una opción alternativa para NV_dgcc.
Esta limpieza no afecta a ningún controlador relacionado.

Fuente: GitHub

Artículo tomado de MuyLinux.xyz.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba