Nove verzije Wine 11.10 i Vkd3d 2.0

Objavljen je eksperimentalni izdanak otvorene implementacije Win32 API — Wine 11.10. Od izdanja 11.9 zatvoreno je 17 izvještaja o greškama i uvedeno 248 promjena.

Najvažnije promjene:

  • Ugrađeni paket Vkd3d s implementacijom Direct3D 12 ažuriran je na verziju 2.0.
  • Predložena je redizajnirana podrška za jezik XPath, implementirana bez korištenja knjižnice libxml2.
  • Poboljšana je kompatibilnost s VBScriptom.
  • U ntdll su dodane zamjenske funkcije za API ALPC (Advanced Local Procedure Call): NtAlpcCreatePort(), NtAlpcConnectPort(), NtAlpcAcceptConnectPort(), NtAlpcSendWaitReceivePort(), NtAlpcDisconnectPort() i NtAlpcImpersonateClientOfPort().
  • Poboljšana je podrška za Bluetooth, dodane su metode BluetoothLEDeviceStatics::FromBluetoothAddressAsync, IBluetoothLEDevice::get_DeviceId, IBluetoothLEDevice::get_GattServices, IGattDeviceService::get_Uuid i IGattDeviceService::get_AttributeHandle.
  • U implementaciji d3dx10 i d3dx11 dodana je mogućnost učitavanja DDS datoteka s nizovima tekstura. Funkciji D3DX10LoadTextureFromTexture() dodana je podrška za 3D teksture, teksture s podrškom za razine detalja i generaciju MIP razina (MipMap).
  • U DLL win32u implementirane su funkcije NtUserGetMessagePos() i NtUserSetMessageExtraInfo().
  • Zatvoreni su izvještaji o greškama povezani s radom aplikacija: IrfanView, Kodak EasyShare, Git for Windows, Family Tree Maker 2017, Foxit PhantomPDF Business 10.0, Vocaloid 6, Photolemur 3,
    TrackChecker.
  • Zatvoreni su izvještaji o greškama povezani s radom igara: Star Wars Racer, Star Wars: Knights of the Old Republic, Age of Empires III: The Asian Dynasties.

Projekat Wine također je objavio izdanak paketa vkd3d 2.0 s implementacijom Direct3D 12, radeći kroz translatore poziva u grafički API Vulkan. Paket uključuje biblioteke libvkd3d s implementacijom Direct3D 12, libvkd3d-shader s prevoditeljem modela šejdera i libvkd3d-utils s funkcijama za pojednostavljenje portiranja aplikacija Direct3D 12, kao i skup demonstracijskih primjera, uključujući port glxgears na Direct3D 12. Kod projekta distribuira se pod licencom LGPLv2.1.

Biblioteka libvkd3d podržava većinu značajki Direct3D 12, uključujući alate za grafiku i izračune, redove i popise naredbi, deskriptore i deskriptore hrpe, korijenske potpise, neuredni pristup, Samplere, potpise naredbi, korijenske konstante, neizravno (indirect) crtanje, metode Clear*() i Copy*(). U libvkd3d-shader implementirana je translacija bajt-koda modela mušica u međurazinu SPIR-V. Podržane su vršne, pikselne, tesselacijske, računske i jednostavne geometrijske mušice, serijalizacija i deserializacija korijenskog potpisa. Od mušičastih instrukcija implementirane su aritmetičke, atomske i bitne operacije, operatori usporedbe i upravljanja tokom prijenosa podataka, instrukcije sample, gather i load, operacije neurednog pristupa (UAV, Unordered Access View).

U novoj verziji vkd3d:

  • U implementaciju jezika mušica HLSL dodana je početna podrška za petlje za 2-3 modela mušica, pojavila se mogućnost zapisivanja u strukturiranu zajedničku memoriju grupe niti, implementirane su ugrađene funkcije tex3Dbias(), tex3Dlod() i texCUBElod(), osigurana je podrška za semantike SV_ClipDistance, SV_CullDistance i SV_StencilRef za obradu ulaza i izlaza iz mušica.
  • U HLSL kompilatoru mušica implementirano je automatsko uklanjanje duplicirajućih izračuna, osigurano je izračunavanje u fazi kompajliranja izraza tipa x % y s unaprijed poznatim vrijednostima, poboljšano je raspoređivanje privremenih registara. U skladu s zahtjevima specifikacije HLSL proširena je vidljivost varijabli u petljama 'for' (varijabla ostaje dostupna nakon završetka petlje). Pri parsiranju decimalnih brojeva prekinuto je računanje lokalnog (kao razdjelnik se sada uvijek koristi točka).
  • Poboljšana je podrška za stari binarni format mušica Direct3D. Implementirane su instrukcije m4x4, m3x4, m4x3, m3x3, m3x2, phase, texdepth,
    texreg2ar, texreg2gb, texreg2rgb. Dodana je podrška za modifikatore '_dz', '_db', '_dw' i '_da' koji se mogu koristiti s instrukcijama texcrd i texld. Dodana je podrška za registre 'vFace' i 'vPos' za rad s pikselnim mušicama.
  • U DXIL-u (Direct3D Intermediate Language) u kodu, u operacijama učitavanja, spremanja, atomskog mijenjanja i usporedbe implementirana je mogućnost korištenja pokazivača na podatke, deklarirane kasnije.
  • U Direct3D dodan je suport za 16-bitne ugrađene konstante, kao i zastavice ‘64UAVs’,
    ‘ROVs’,
    ‘UAVLoadAdditionalFormats’,
    ‘UAVsAtEveryStage’,
    ‘allResourcesBound’,
    ‘enable11_1ShaderExtensions’,
    ‘int64Ops’,
    ‘nativeLowPrecision’,
    ‘stencilRef’,
    ‘viewportAndRTArrayIndex’ i
    ‘waveOps’.
  • Implementirane su opcije za kompilaciju shader-a: VKD3D_SHADER_COMPILE_OPTION_DENORMAL_MODE_F16, VKD3D_SHADER_COMPILE_OPTION_DENORMAL_MODE_F32, VKD3D_SHADER_COMPILE_OPTION_DENORMAL_MODE_F64 i VKD3D_SHADER_COMPILE_OPTION_CONST_GLOBAL_UNIFORM.

Izvor: opennet.ru

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster