Wine 8.0 leidimo kandidatas ir vkd3d 1.6 leidimas

Pradėti bandymai su pirmuoju kandidatu į Wine 8.0 – atvirą WinAPI diegimą. Kodo bazė buvo sustabdyta prieš išleidimą, kuris turėtų būti sausio viduryje. Nuo „Wine 7.22“ išleidimo buvo uždaryti 52 pranešimai apie klaidas ir atlikti 538 pakeitimai.

Svarbiausi pakeitimai:

  • „vkd3d“ paketas su „Direct3D 12“ diegimu, kuris veikia per „Vulkan“ grafikos API transliavimo skambučius, buvo atnaujintas į 1.6 versiją.
  • Atliktas Vulkan ir OpenGL sistemos skambučių keitiklių (thunks) optimizavimas.
  • „WinPrint“ išplėtė spausdinimo procesorių palaikymą.
  • Patobulintas vairasvirtės valdymo pultas.
  • Darbas buvo baigtas siekiant suteikti palaikymą „ilgajam“ tipui printf funkcijos kode.
  • Pranešimai apie klaidas, susijusias su žaidimų veikimu, uždaromi: Tom Clancy's Rainbow Six: Vegas 2, The Void, Ragnarok Online, Drakan, Star Wars, Colin McRae, X-COM.
  • Uždarytos klaidų ataskaitos, susijusios su programų veikimu: TMUnlimiter 1.2.0.0, MDB Viewer Plus, Framemaker 8, Studio One Professional 5.

Be to, galime pastebėti, kad „Wine“ projektas paskelbė vkd3d 1.6 paketą su „Direct3D 12“ diegimu, kuris verčia iškvietimus į „Vulkan“ grafikos API. Paketą sudaro libvkd3d bibliotekos su Direct3D 12 įgyvendinimu, libvkd3d-shader su Shader modelių 4 ir 5 vertėju ir libvkd3d-utils su funkcijomis, palengvinančiomis Direct3D 12 programų perkėlimą, taip pat demonstracinių pavyzdžių rinkinys, įskaitant prievadą. glxgears į Direct3D 12. Projekto kodas platinamas pagal LGPLv2.1 licenciją.

Libvkd3d biblioteka palaiko daugumą „Direct3D 12“ funkcijų, įskaitant grafiką ir skaičiavimo priemones, eiles ir komandų sąrašus, rankenas ir krūvos rankenas, šakninius parašus, netvarkingą prieigą, pavyzdžius, komandų parašus, šaknies konstantas, netiesioginį atvaizdavimą, išvalymo metodus *( ) ir Kopijuoti* (). „Libvkd3d-shader“ yra įgyvendintas 4 ir 5 šešėlių modelių baitinio kodo vertimas į tarpinį SPIR-V atvaizdavimą. Palaiko viršūnių, pikselių, teseliaciją, skaičiavimo ir paprastus geometrijos atspalvius, šakninio parašo serializavimą ir deserializavimą. Shader instrukcijos apima aritmetines, atomines ir bitų operacijas, palyginimo ir duomenų srauto valdymo operatorius, imties, rinkimo ir įkėlimo instrukcijas, netvarkingos prieigos operacijas (UAV, Unordered Access View).

Naujoji versija toliau tobulina šešėlių kompiliatorių HLSL (aukšto lygio šešėlių kalba), teikiamą pradedant nuo 9.0 DirectX. Su HLSL susiję patobulinimai apima:

  • Pradinis skaičiavimo šešėlių palaikymas įdiegtas.
  • Patobulintas sudėtinių objektų, pvz., struktūrų ir masyvų, inicijavimo ir priskyrimo palaikymas.
  • Pridėta galimybė įkelti ir išsaugoti tekstūros išteklius naudojant netvarkingą prieigą (UAV).
  • Pridėtas funkcijų atributų palaikymas ir įdiegtos įmontuotos funkcijos asuint(), long(), normalize().
  • Pridėtas slankaus kablelio modulių palaikymas.
  • Įdiegta vėliavėlė VKD3D_SHADER_DESCRIPTOR_INFO_FLAG_UAV_ATOMICS, nurodanti atomines operacijas netvarkingos prieigos vaizdavimo (UAV) aprašuose.

Šaltinis: opennet.ru

Добавить комментарий