Proyecto Wine publicado Vkd3d 1.14 con implementación Direct3D 12

El proyecto Wine ha publicado el lanzamiento del paquete vkd3d 1.14 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 de cálculo y gráficos, colas y listas de comandos, identificadores y identificadores de montón, firmas raíz, acceso desordenado, muestras, firmas de comandos, constantes raíz, renderizado indirecto, métodos Clear *( ) y Copiar*(). libvkd3d-shader implementa la traducción del código de bytes de los modelos de sombreado 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 agregó soporte inicial para el lenguaje de sombreado MSL (Metal Shading Language) utilizado por Apple en la API de gráficos Metal.
  • Se implementó soporte de desensamblador para efectos binarios.
  • La biblioteca libvkd3 implementa el método OMSetDepthBounds() en la interfaz ID3D12GraphicsCommandList1 para cambiar dinámicamente el rango permitido de valores de profundidad en el búfer Z.
  • Se agregó la variable de entorno VKD3D_CAPS_OVERRIDE para anular la información proporcionada a las aplicaciones sobre las capacidades disponibles, como los niveles máximos admitidos de funcionalidad y enlaces de recursos.
  • Se agregó soporte inicial para sombreadores de teselación a la implementación del lenguaje de sombreado HLSL. Funciones integradas implementadas dst(), f32tof16(), mad(), modf() y sincos(). Para los modelos de sombreador de perfiles 1, 2 y 3, se agregó soporte para la operación "descartar". Se agregó soporte para la semántica de datos de entrada SV_SampleIndex para sombreadores de fragmentos y SV_GroupIndex para sombreadores de cálculo.
  • Se ha implementado una gran parte de nuevas instrucciones para el lenguaje de sombreado GLSL.

Fuente: opennet.ru

Compre alojamiento confiable para sitios con protección DDoS, servidores VPS VDS 🔥 Compra alojamiento web fiable con protección DDoS, servidores VPS VDS | ProHoster