Wine projekt avaldas Vkd3d 1.11 versiooni, mis rakendab Direct3D 12

Wine projekt avaldas vkd3d 1.11 versiooni, mis rakendab Direct3D 12, töötades läbi vulkani graafilise API-le tehtud kutsete tõlke. Pakett sisaldab libvkd3d teeke, mis rakendavad Direct3D 12, libvkd3d-shader'i koos 4. ja 5. mudeli shaderite tõlkijaga ning libvkd3d-utils, mis sisaldavad funktsioone Direct3D 12 rakenduste portimise lihtsustamiseks, samuti näidisnäidendeid, sealhulgas glxgears'i porti Direct3D 12-le. Projekti kood on litsentseeritud LGPLv2.1 all.

Raamatukogu libvkd3d toetab enamikku Direct3D 12 võimalustest, sealhulgas graafika ja arvutamise vahendeid, järjekordi ja käsutamisliste, kirjeldajaid ja kaste, juureretsepte, segamatut juurdepääsu, näidikuid, käsureseptide, juurekonstantide, kaudset joonistamist, Clear*() ja Copy*() meetodeid. libvkd3d-shader'is on rakendatud 4. ja 5. mudeli shaderite bytecode'i tõlge vaheesitusele SPIR-V. Toetatud on tipp-, piksel-, tesselatsioon-, arvutamis- ja lihtsad geomeetrilised shaderid, juureretsepti serialiseerimine ja deserialiseerimine. Shaderi käskude seast on rakendatud aritmeetilised, aatomilised ja bititehteid, võrdlemise ja andmevoo juhtimise operaatorid, käsud sample, gather ja load, segamatu juurdepääsu operatsioonid (UAV, Unordered Access View).

Uues versioonis:

  • Lisatud algne tugi Direct3D vana bytecode'i kompileerimiseks vaheesitusele SPIR-V.
  • HLSL kompilaatorisse on lisatud algne tugi Direct3D efektide profiilide ("fx_2_0", "fx_4_0", "fx_4_1" ja "fx_5_0") kompileerimiseks.
  • Eksperimentaalne tugi DirectX vahekeele DXIL (DirectX Intermediate Language) kompileerimiseks SPIR-V vaheesitusele ja Direct3D shaderite assemblerkäskudesse on lisatud.
  • HLSL-is on toetatud profiile "fx_2_0", "fx_4_0", "fx_4_1" ja "fx_5_0", rakendatud sisseehitatud funktsioonid acos(), asin(), atan() ja atan2(), ning toetatud on "Buffer" ressurssid.
  • Lisatud optimeerimine, mis uuendab kirjeldajaid asünkroonselt, mis võib kiirendada rakendusi, mis uuendavad suurt hulka kirjeldajaid iga kaadri kohta.
  • Rakendatud Vulkan laiendusi VK_EXT_mutable_descriptor_type ja VK_EXT_shader_viewport_index_layer, et suurendada tõhusust kirjeldajate basseini käitlemisel ja kiirendada tippude ja tesselatsioonshaderite massiivide renderdamist.
  • Lisatud to support ID3D12Device7 ja ID3D12Resource2 liideseid. ID3D12Device4 liidesesse on lisatud meetod GetResourceAllocationInfo1().
  • Lisatud to support D3DReflect() ja D3DDisassemble() liideseid.
  • Rakendatud on D3D12_FEATURE_D3D12_OPTIONS6, D3D12_FEATURE_D3D12_OPTIONS7, D3D12_FEATURE_D3D12_OPTIONS8, D3D12_FEATURE_D3D12_OPTIONS9, D3D12_FEATURE_D3D12_OPTIONS10, D3D12_FEATURE_D3D12_OPTIONS11, D3D12_FEATURE_D3D12_OPTIONS12 ja D3D12_FEATURE_D3D12_OPTIONS13 kontrollküsitlusi.
  • Uued kompileerimisvalikud: VKD3D_SHADER_COMPILE_OPTION_FEATURE, VKD3D_SHADER_COMPILE_OPTION_FEATURE_INT64, VKD3D_SHADER_COMPILE_OPTION_FEATURE_FLOAT64, VKD3D_SHADER_API_VERSION_1_10 ja VKD3D_SHADER_SPIRV_EXTENSION_EXT_VIEWPORT_INDEX_LAYER.
  • D3D12CreateDeviceVKD3D() ja D3D12CreateDevice() funktsioonides on kasutatud Vulkani laiendusi VK_KHR_android_surface, VK_KHR_wayland_surface, VK_KHR_win32_surface, VK_KHR_xlib_surface, VK_EXT_metal_surface ja VK_MVK_ios_surface.

Allikas: opennet.ru

Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster