Microsoft avaldas kihi D3D9On12 lähtekoodi, mida kasutatakse Direct3D 9 käskude teisendamiseks Direct3D 12 -ks

Microsoftilt on avaldatud häid uudiseid ja see on hiljuti tegi sellest teada blogipostituse kaudu kihi D3D9On12 lähtekoodi avamine rakendades DDI (Device Driver Interface) seadet, mis teisendab Direct3D 9 (D3D9) käsud Direct3D 12 (D3D12) käskudeks.

See Microsofti samm muudab nüüd arendajatel oma mängude jaoks DirectX11 -lt DirectX12 -le ülemineku lihtsamaks kui kunagi varem. DX12 tõlkekiht on sisuliselt abiteek graafiliste kontseptsioonide ja käskude tõlkimiseks DX11 stiilis domeenist DX12 stiilis domeeni.

On möödunud aega sellest, kui viimati mainisime D3D9On12 kaardistamiskihti. Kiire värskendusena kaardistab see D3D9 käsud D3D12 -ks, mis toimib D3D9 seadme draiveri liidesena (DDI). Selle kaardistamiskihi olemasolu võimaldab vanematel D3D9 rakendustel töötada kaasaegsetes süsteemides, millel ei pruugi olla D3D9 draiverit. Alates viimasest ajaveebi postitusest lisasime katvuse laiendustele alfatoe, parandasime mõned vead ja puhastasime avatud lähtekoodiga koodibaasi.

See on kahtlemata hea uudis ja see on see Nüüd saavad kasu mitmesugused kihiga töötavad projektid, kuna sellisena võimaldab see pärandrakendustel töötada keskkonnas, mis toetab ainult D3D12, st näiteks see võib olla kasulik projektide D3D9 rakendamiseks vkd3d ja VKD3D-Prootonkuna need pakuvad Linuxile Direct3D 12 rakendust, mis töötab D3D12 kõnede tõlkimisel Vulkani graafilisse API -sse.

D3D9On12 on kiht, mis kaardistab graafilised käsud D3D9 kuni D3D12. D3D9On12 ei ole D3D9 API rakendus, vaid pigem D3D9 DDI (Device Driver Interface) kasutajarežiimi juurutus. See tähendab, et see pole binaar nimega d3d9.dll, vaid pigem d3d9on12.dll.

Kui rakendus loob D3D9 -seadme, saab selle asemel valida D3D9On12 -seadme, mitte kohaliku D3D9 -seadme. Kui see juhtub, laaditakse d3d9on12.dll D3D9 käitusajaga ja vormindatakse. Kui rakendus renderduskäsklusi kutsub, kinnitab D3D9 need käsud ja teisendab need käsud DDI D3D9 -ks ning saadab need D3D9On12 -le, nagu iga D3D9 draiver.

D3D9On12 võtab need käsud ja teisendab need D3D12 API kõnedeks, mida D3D12 käitusaeg kinnitab, lisades valikuliselt ka silumiskihi D3D12, mis seejärel teisendatakse DDI D3D12 -ks ja saadetakse D3D12 draiverile.

Mainitakse ka seda projekt põhineb sarnase alamsüsteemi koodil, mis sisaldub Windows 10 -s. Tuleb märkida, et koodi D3D9On12 avaldamine annab võimaluse nii et kogukonna esindajad osaleda veaparandustes ja optimeerimiste lisamises, ja see võib olla ka näiteks D3D9 DDI draiverite rakendamise uurimiseks ja raamistik selliste kihtide loomiseks D3D12 erinevate graafiliste API -de tõlkimiseks.

Miks avatud lähtekoodiga?
D3D9On12 on juba paar aastat olnud osa Windows 10 -st ning selle aja jooksul on selle stabiilsus ja kasutatavus kasvanud. Tehke see avatud lähtekoodiga:

Lubage kogukonnal aidata täiendavaid veaparandusi või toimivustäiustusi.
on veel üks näide D3D12TranslationLayer kasutamise kohta
andke huvilistele pilk sellele, milline näeb välja D3D9 DDI teostus

Samal ajal on välja antud DXBC Signer pakett, mis võimaldab DXBC -failidele alla kirjutada kolmanda osapoole tööriistakomplektide poolt suvaliselt loodud. D3D9On12 kasutab seda paketti DXBC -de allkirjastamiseks, mis on loodud varjude teisendamisel uueks mudeliks.

Lõpuks kui olete huvitatud sellest rohkem teada saama, saate vaadata Microsofti ajaveebis avaldatud väljaande üksikasju Järgmisel lingil.


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutab: Miguel Ángel Gatón
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.