Wine 8.0 -julkaisuehdokas ja vkd3d 1.6 -julkaisu

Ensimmäisen Wine 8.0:n, WinAPI:n avoimen toteutuksen, testaus on alkanut. Koodikanta on asetettu jäädytysvaiheeseen ennen julkaisua, jonka odotetaan olevan tammikuun puolivälissä. Wine 7.22:n julkaisun jälkeen 52 virheraporttia on suljettu ja 538 muutosta tehty.

Tärkeimmät muutokset:

  • vkd3d-paketti, jossa on Direct3D 12 -toteutus, joka toimii Vulkan-grafiikkasovellusliittymään puhelun kääntämisen kautta, on päivitetty versioon 1.6.
  • Järjestelmäpuhelumuuntimien (thunks) optimointi Vulkanille ja OpenGL:lle on suoritettu.
  • WinPrint on laajentanut tukea tulostusprosessoreille.
  • Parannettu joystick-ohjauspaneeli.
  • Työ on saatu päätökseen printf-toimintokoodin "pitkän" tyypin tukemiseksi.
  • Pelien toimintaan liittyvät virheilmoitukset on suljettu: Tom Clancy's Rainbow Six: Vegas 2, The Void, Ragnarok Online, Drakan, Star Wars, Colin McRae, X-COM.
  • Suljetut virheraportit liittyen sovellusten toimintaan: TMUnlimiter 1.2.0.0, MDB Viewer Plus, Framemaker 8, Studio One Professional 5.

Lisäksi Wine-projekti on julkaissut vkd3d 1.6 -paketin Direct3D 12:n toteutuksella, joka työstää kutsujen kääntämisen Vulkan-grafiikkasovellusliittymään. Paketti sisältää libvkd3d-kirjastoja Direct3D 12 -toteutuksineen, libvkd3d-shaderin Shader-mallien 4 ja 5 kääntäjällä ja libvkd3d-utilit toiminnoilla, jotka yksinkertaistavat Direct3D 12 -sovellusten siirtoa, sekä joukon esimerkkejä, mukaan lukien portti. glxgearsistä Direct3D 12:een. Projektikoodi on jaettu LGPLv2.1-lisenssillä.

Libvkd3d-kirjasto tukee useimpia Direct3D 12 -ominaisuuksia, mukaan lukien grafiikka ja laskentatilat, jonot ja komentoluettelot, kahvat ja kasakahvat, juuriallekirjoitukset, epäjärjestyksessä käyttö, Samplerit, komentoallekirjoitukset, juurivakiot, epäsuora renderöinti, Clear method *( ) ja Kopioi*(). Libvkd3d-shaderissa Shader-mallien 4 ja 5 tavukoodin käännös on toteutettu SPIR-V-väliesityksenä. Tukee vertexiä, pikseliä, tessellaatiota, laskentaa ja yksinkertaisia ​​geometrian varjostimia, juuriallekirjoituksen serialisointia ja deserialisointia. Shader-käskyt sisältävät aritmeettisia, atomi- ja bittioperaatioita, vertailu- ja tietovirran ohjausoperaattoreita, näyte-, keräys- ja latauskäskyjä, järjestämättömät pääsytoiminnot (UAV, Unordered Access View).

Uusi versio jatkaa HLSL:n (High-Level Shader Language) varjostuskääntäjän parantamista DirectX 9.0:sta alkaen. HLSL:ään liittyviä parannuksia ovat mm.

  • Alkuperäinen tuki laskentavarjostimille on otettu käyttöön.
  • Parannettu tuki yhdistelmäobjektien, kuten rakenteiden ja taulukoiden, alustamiselle ja määrittämiselle.
  • Lisätty mahdollisuus ladata ja tallentaa pintakuvioresursseja käyttämällä out-of-order -käyttöä (UAV).
  • Lisätty tuki funktiomääritteille ja toteutettu sisäänrakennetut funktiot asuint(), pituus(), normalize().
  • Lisätty tuki liukulukumoduuleille.
  • Toteutettu VKD3D_SHADER_DESCRIPTOR_INFO_FLAG_UAV_ATOMICS-lippu ilmaisemaan atomioperaatioita järjestämättömän pääsyn esityksen (UAV) kuvaajille.

Lähde: opennet.ru

Lisää kommentti