Ja va ser alliberada la nova versió de vkd3d 1.3

Després d'un any i mig de desenvolupament, el projecte Wine va donar a conèixer el llançament de la nova versió del paquet «vkd3d 1.3″ amb una implementació de Direct3D 12 que funciona a través de la traducció de trucades a l'API de gràfics Vulkan.

Aquesta versió conté diverses millores i dels quals en aquesta nova versió els aspectes més destacats són el suport inicial de compilació HLSL, així com també la compatibilitat amb la matriu de descriptors Shader Model 5.1, el suport per desmuntar ombrejadors de Direct3D, entre altres coses més.

Per als qui desconeixen del paquet, han de saber que inclou biblioteques libvkd3d amb implementacions de Direct3D 12, libvkd3d-shader amb traductor de shader model 4 i 5 i libvkd3d-utils amb funcions per simplificar la migració d'aplicacions Direct3D 12, així com un conjunt de demostracions, inclòs el port glxgears a Direct3D 12. El codi de el projecte es distribueix llicenciat sota LGPLv2.1.

la biblioteca libvkd3d admet la majoria de les funcions de Direct3D 12, incloses les funcions de gràfics i computació, llistes i cues d'ordres, descriptors i descriptors de munt, firmes root, accés no ordenat, mostrejadors, firmes d'ordres, constants root, representació indirecta, etc.

Libvkd3d-shader implementa la traducció de el codi de bytes 4 i 5 dels models d'ombreig a la representació intermèdia SPIR-V. S'admeten vèrtexs, píxels, tessel·lació, ombrejadors de geometria simple i computacional, serialització de firmes root i deserialització.

Les instruccions de l'ombreig inclouen operacions aritmètiques, atòmiques i bit a bit, operadors de control de flux de dades i comparació, instruccions de mostreig, recopilació i càrrega, operacions d'accés no ordenat (UAV, Vista d'accés no ordenat).

En l'etapa actual de desenvolupament, no totes les trucades a Direct3D 12 estan implementades i les proves es van fer principalment en un conjunt d'aplicacions de demostració.

Principals novetats de Vkd3d 1.3

En aquesta nova versió que es presenta de vkd3d 1.3 es destaca que es va afegir el suport inicial per compilar i pre processar ombrejadors a HLSL (llenguatge d'ombrejat d'alt nivell), el qual és proporcionat des de la versió de DirectX 9.0.

Un altre dels canvis que es destaca d'aquesta nova versió és la compatibilitat amb operacions de coma flotant de doble precisió en ombrejadors, així com també l'encaminament indirecte per a ombrejadors de tessel·lació, l'exportació de plantilles des d'ombrejadors, el modificador d'ombreig «precís» i les barreres globals per a recursos en memòria.

També podrem trobar que es va implementar la capacitat de desassemblar els ombrejadors de Direct3D des del codi de bytes fins a la representació de l'assemblador, a més que es va afegir compatibilitat per analitzar l'antic format de codi de bytes de Direct3D utilitzat en els models d'ombreig de Direct3D 1, 2 i 3.

libvkd3d va afegir funcions de Direct3D 12, com a firmes root, comptadors de cerca desordenats, booleans de combinació de sortida, mode d'encaminament de textura mirror_once i es va afegir l'estructura vkd3d_host_time_domain_info.

Dels altres canvis que es destaquen d'aquesta nova versió:

  • vkd3d_shader_preprocess_info amplia l'estructura vkd3d_shader_compile_info, i es pot utilitzar per especificar paràmetres de preprocessament com a definicions de macros de preprocessador.
  • vkd3d_shader_hlsl_source_info amplia l'estructura vkd3d_shader_compile_info, i es pot fer servir per especificar HLSL i paràmetres de compilació com el perfil de destinació i el punt d'entrada.
  • Models d'enllaç Direct3D 12 i Vulkan
  • VKD3D_SHADER_COMPILE_OPTION_API_VERSION es pot fer servir per especificar la versió de l'API libvkd3d-shader l'aplicació està apuntant. Si no s'especifica, s'utilitzarà VKD3D_SHADER_API_VERSION_1_2.
  • vkd3d-compiler utilitzarà per defecte la sortida en color si podeu determinar que el
    la sortida és una teleimpressora amb capacitat de color.
  • S'ha afegit suport per a matrius de descriptors definides a Shader Model 5.1.

Finalment si vols conèixer més a l'respecte sobre aquesta nova versió, podeu consultar la llista completa de canvis en el següent enllaç.

Com instal·lar vkd3d a Linux?

Per als que estiguin interessats en poder instal·lar vkd3d en el sistema, hauran d'obtenir el codi font i procedir a realitzar la compilació, encara que per a fins pràctiques o per a aquells novells, poden provar aquesta biblioteca sense gaire esforç. Per a això només s'han d'instal·lar lutris i dins de les configuracions d'aquest.

Quant als interessats en la compilació han d'obtenir el codi amb:

git clone git://source.winehq.org/git/vkd3d.git/
./autogen.sh
./configure
make
../vkd3d/configure --build=i686-pc-linux-gnu "CPPFLAGS=-m32" "LDFLAGS=-m32"

Finalment es hauran d'habilitar les capes de Vulkan:

export VK_INSTANCE_LAYERS=VK_LAYER_LUNARG_standard_validation
VKD3D_CONFIG=vk_debug


Sigues el primer a comentar

Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.