Il progetto Wine ha pubblicato Vkd3d 1.5 con implementazione di Direct3D 12

Il progetto Wine ha pubblicato una nuova versione del pacchetto vkd3d 1.5 con implementazione di Direct3D 12, funzionante tramite traduzione delle chiamate nell'API grafica Vulkan. Il pacchetto include le librerie libvkd3d con l'implementazione di Direct3D 12, libvkd3d-shader con il traduttore per i modelli di shader 4 e 5, e libvkd3d-utils con funzioni per semplificare il porting delle applicazioni Direct3D 12, oltre a un insieme di esempi dimostrativi, incluso il porting di glxgears su Direct3D 12. Il codice del progetto è distribuito sotto licenza LGPLv2.1.

La libreria libvkd3d supporta la maggior parte delle funzionalità di Direct3D 12, inclusi strumenti per grafica e calcolo, code e liste di comandi, descrittori e descrittori di heap, firme radice, accesso non ordinato, sampler, firme di comandi, costanti radice, disegno indiretto, metodi Clear*() e Copy*().

In libvkd3d-shader è implementata la traduzione del bytecode dei modelli di shader 4 e 5 in una rappresentazione intermedia SPIR-V. Sono supportati shader di vertici, pixel, tessellazione, calcolo e shader geometrico semplice, oltre alla serializzazione e deserializzazione della firma radice. Tra le istruzioni shader sono implementate operazioni aritmetiche, atomiche e bitwise, operatori di confronto e controllo del flusso di dati, istruzioni sample, gather e load, e operazioni di accesso non ordinato (UAV, Unordered Access View).

Nella nuova versione:

  • Sono stati introdotti numerosi miglioramenti nel compilatore di shader in HLSL (High-Level Shader Language), fornito a partire da DirectX 9.0. In particolare, il supporto per i tipi di oggetti HLSL come Texture2D è stato migliorato nelle strutture e negli array, è stato aggiunto il supporto per le funzioni incorporate dot(), ldexp() e lerp(), e per i modelli di shader 4 e 5 è stato implementato il supporto per gli operatori logici 'and', 'or' e 'not', oltre alla possibilità di conversione tra tipi booleani.
  • È stata implementata l'opzione VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV per il caricamento di una rappresentazione di accesso non ordinato (UAV) per formati multicomponente SPIR-V (DXGI_FORMAT).

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster