Testimi i kandidatit të parë për lëshimet Wine 8.0, një implementim të hapur të WinAPI, ka filluar. Baza e kodit është transferuar në fazën e ngrirjes para lëshimit, i cili pritet të publikohet në mes të janarit. Krahasuar me lëshimin e Wine 7.22, janë mbyllur 52 raportime për gabime dhe janë bërë 538 ndryshime.
Ndryshimet më të rëndësishme:
- Paketa vkd3d me implementimin e Direct3D 12, që funksionon përmes translacionit të thirrjeve në API-në grafike Vulkan, është përditësuar në versionin 1.6.
- Optimizimi i konvertuesve të thirrjeve sistemike (thunk) për Vulkan dhe OpenGL është realizuar.
- Në WinPrint është zgjeruar mbështetja për procesorët e daljes për printim (Print processor).
- simulimit të çrregullimeve të perceptimit të ngjyrave. Simulimi i dykromacisë protanopike, deuteranopike dhe tritanopike është hequr. panairi i menaxhimit me një joystick.
- Puna e mbështetjes së tipit 'long' është përfundoar në kodin e funksionit printf.
- Raportet e defekteve lidhur me funksionimin e lojĂ«rave: Tom Clancyâs Rainbow Six: Vegas 2, The Void, Ragnarok Online, Drakan, Star Wars, Colin McRae, X-COM janĂ« mbyllur.
- Janë mbyllur raportet për gabimet e lidhura me funksionimin e aplikacioneve: TMUnlimiter 1.2.0.0, MDB Viewer Plus, Framemaker 8, Studio One Professional 5.
Gjithashtu mund të theksohet publikimi nga projekti Wine i paketës vkd3d 1.6 me implementimin e Direct3D 12, që funksionon përmes translacionit të thirrjeve në API-në grafike Vulkan. Paketa përmban bibliotekat libvkd3d me implementimin e Direct3D 12, libvkd3d-shader me translacionin e modeleve të shenjuesve 4 dhe 5, si dhe libvkd3d-utils me funksione për të lehtësuar portimin e aplikacioneve Direct3D 12, si dhe një grup shembujsh, duke përfshirë portimin e glxgears në Direct3D 12. Kodi i projektit shpërndahet nën licencën LGPLv2.1.
Biblioteka libvkd3d mbështet shumicën e mundësive të Direct3D 12, përfshirë mjetet për grafikë dhe llogaritje, radhët dhe listat e komandave, deskriptorët dhe grumbujt e deskriptorëve, root signatures, qasjen e parenditur, sampler-at, command signatures, root constants, vizatimin indirekt (indirect), si dhe metodat Clear*() dhe Copy*(). Në libvkd3d-shader është zbatuar përkthimi i bytecode-it të modeleve të shader-ëve 4 dhe 5 në paraqitjen e ndërmjetme SPIR-V. Mbështeten shader-ë vertex, pixel, tessellation, compute dhe shader-ë të thjeshtë gjeometrikë, si edhe serializimi dhe deserializimi i root signature. Nga instruksionet e shader-ëve janë zbatuar operacionet aritmetike, atomike dhe bitwise, operatorët e krahasimit dhe të kontrollit të rrjedhës së të dhënave, instruksionet sample, gather dhe load, si dhe operacionet e qasjes së parenditur (UAV, Unordered Access View).
Në versionin e ri është vazhduar puna për përmirësimin e kompilatorit të shenjuesve në gjuhën HLSL (High-Level Shader Language), që ofrohet që nga DirectX 9.0. Në mesin e përmirësimeve që lidhen me HLSL:
- ĂshtĂ« realizuar mbĂ«shtetje fillestare pĂ«r shenjuesit kompjuterikĂ«.
- ĂshtĂ« pĂ«rmirĂ«suar mbĂ«shtetja pĂ«r inicializimin dhe caktimin e objekteve komplekse, tĂ« tilla si strukturat dhe arrays.
- ĂshtĂ« shtuar mundĂ«sia e ngarkimit dhe ruajtjes sĂ« burimeve tĂ« teksturave, duke pĂ«rdorur aksesin e pakorruar (UAV).
- ĂshtĂ« shtuar mbĂ«shtetja pĂ«r atributet e funksioneve dhe janĂ« realizuar funksionet e ndĂ«rtuara asuint(), length(), normalize().
- ĂshtĂ« shtuar mbĂ«shtetje pĂ«r modulet pĂ«r llogaritjet me pikĂ« tĂ« lĂ«vizshme.
- ĂshtĂ« realizuar flamuri VKD3D_SHADER_DESCRIPTOR_INFO_FLAG_UAV_ATOMICS pĂ«r tĂ« treguar operacionet atomike mbi deskriptorĂ«t e qasjes sĂ« pakorruar (UAV).
Burimi: opennet.ru
