Pwojè diven pibliye Vkd3d 1.7 ak aplikasyon Direct3D 12

Pwojè Wine pibliye lage pake vkd3d 1.7 ak yon aplikasyon Direct3D 12 ki travay atravè apèl difize nan API grafik Vulkan. Pake a gen ladan bibliyotèk libvkd3d ak aplikasyon Direct3D 12, libvkd3d-shader ak yon tradiktè nan modèl shader 4 ak 5 ak libvkd3d-utils ak fonksyon pou senplifye pòtaj aplikasyon Direct3D 12, ansanm ak yon seri egzanp demonstrasyon, ki gen ladan yon pò. nan glxgears nan Direct3D 12. Kòd pwojè a distribye lisansye anba LGPLv2.1.

Bibliyotèk libvkd3d sipòte pifò karakteristik Direct3D 12, ki gen ladan grafik ak enstalasyon enfòmatik, ke moun kap kriye ak lis kòmand, manch ak manch pil, siyati rasin, aksè ki pa nan lòd, echantiyon, siyati kòmand, konstan rasin, rann endirèk, metòd klè *( ) ak Kopi*(). Nan libvkd3d-shader, tradiksyon bytecode nan modèl shader 4 ak 5 nan yon reprezantasyon SPIR-V entèmedyè aplike. Sipòte somè, pixel, tessellation, kalkile ak jeyometri senp shaders, serializasyon siyati rasin ak deserialization. Enstriksyon Shader gen ladan operasyon aritmetik, atomik ak ti jan, konparezon ak operatè kontwòl koule done, echantiyon, rasanble ak chaje enstriksyon, operasyon aksè ki pa òdone (UAV, Unordered Access View).

Nan nouvo vèsyon an:

  • Travay kontinye amelyore konpilatè shader nan HLSL (High-Level Shader Language):
    • Te ajoute kapasite pou rele fonksyon koutim epi itilize etalaj kòm paramèt nan fonksyon koutim.
    • Te ajoute sipò pou paramèt SV_DispatchThreadID, SV_GroupID ak SV_GroupThreadID.
    • Te ajoute fonksyon entegre all(), distans (), exp (), exp2 (), frac (), lit (), reflect (), sin (), cos (), smoothstep (), sqrt (), rsqrt () , etap (), transpoze ().
    • Te ajoute sipò inisyal pou kalite pwen k ap flote presizyon ki ba tankou "min16float".
  • Siyifikativman amelyore sipò pou pwofil modèl shader Direct3D 1/2/3.
  • Te ajoute API piblik pou analiz (vkd3d_shader_parse_dxbc) ak seri (vkd3d_shader_serialize_dxbc) nan done binè DXBC.

Sous: opennet.ru

Add nouvo kòmantè