Proyecto Wine publicado Vkd3d 1.5 con implementación Direct3D 12

El proyecto Wine ha publicado el lanzamiento del paquete vkd3d 1.5 con una implementación de Direct3D 12 que funciona mediante llamadas de difusión a la API de gráficos Vulkan. El paquete incluye bibliotecas libvkd3d con implementaciones de Direct3D 12, libvkd3d-shader con un traductor de los modelos de sombreado 4 y 5 y libvkd3d-utils con funciones para simplificar la migración de aplicaciones Direct3D 12, así como un conjunto de ejemplos de demostración, incluido un puerto. de glxgears a Direct3D 12. El código del proyecto se distribuye con licencia LGPLv2.1.

La biblioteca libvkd3d admite la mayoría de las funciones de Direct3D 12, incluidas funciones informáticas y gráficas, colas y listas de comandos, identificadores y identificadores de montón, firmas raíz, acceso desordenado, muestreadores, firmas de comandos, constantes raíz, renderizado indirecto, métodos Clear *( ) y Copiar*().

En libvkd3d-shader, se implementa la traducción del código de bytes de los modelos de sombreador 4 y 5 a una representación SPIR-V intermedia. Admite sombreadores de vértices, píxeles, teselación, computación y geometría simple, serialización y deserialización de firmas de raíz. Las instrucciones de sombreado incluyen operaciones aritméticas, atómicas y de bits, operadores de comparación y control de flujo de datos, instrucciones de muestreo, recopilación y carga, operaciones de acceso desordenado (UAV, vista de acceso desordenado).

Versículos nuevos:

  • Se han realizado numerosas mejoras en el compilador de sombreadores HLSL (lenguaje de sombreado de alto nivel) proporcionado desde DirectX 9.0. Incluye soporte mejorado para tipos de objetos HLSL como Texture2D en estructuras y matrices, soporte agregado para funciones integradas dot(), ldexp() y lerp(), soporte agregado para operadores lógicos “y”, “o” para modelos de sombreado 4 y 5 y “no”, así como la capacidad de emitir tipos booleanos.
  • Se implementó la opción VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV para cargar representación de acceso desordenado (UAV) para formatos multiparte SPIR-V (DXGI_FORMAT).

Fuente: opennet.ru

Añadir un comentario