Projekti Wine publikoi Vkd3d 1.13 me implementimin e Direct3D 12

Projekti Wine publikoi version e paketës vkd3d 1.13 me implementimin e Direct3D 12, që funksionon përmes transformimit të thirrjeve në API-në grafike Vulkan. Paketa përfshin bibliotekat libvkd3d me implementimin e Direct3D 12, libvkd3d-shader me përkthyesin e modeleve 4 dhe 5 të shenjave, si dhe libvkd3d-utils me funksione për lehtësimin e portimit të aplikacioneve Direct3D 12, përveç një grupi shembujsh demonstrues, 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, duke përfshirë mjete për grafikë dhe llogaritje, radhë dhe lista komandash, deskriptues dhe deskriptues grumbujsh, nënshkrime themelore, qasje të papërkryer, Sampler-a, nënshkrime komandash, konstantet thelbësore, vizatimin indirekt, metodat Clear*() dhe Copy*(). Në libvkd3d-shader është implementuar përkthimi i kodit të byte të modeleve të shaderave në përfaqësimin ndërmjetës SPIR-V. Mbështeten shaderat e piksevëve, të vertexeve, të tesselacionit, llogaritëse dhe shaderat e thjeshtë gjeometrik, serializimi dhe deserializimi i nënshkrimit themelor. Nga instruksionet e shaderëve janë implementuar operacionet aritmetike, atomike dhe bllokuese, operatorët e krahasimit dhe kontrollit të rrjedhës së të dhënave, instrukcionet sample, gather dhe load, operacionet e qasjes së papërkryer (UAV, Unordered Access View).

NĂ« versionin e ri:

  • NĂ« pĂ«rpiluesin HLSL Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r zhvillimin e cikleve (loop unrolling, optimizim, ku pĂ«r njĂ« pĂ«rdorim mĂ« efikas tĂ« kujtesĂ«s sĂ« procesorit dhe pĂ«r tĂ« reduktuar ndarjen, operacionet ciklike zĂ«vendĂ«sohen me disa kopje tĂ« njĂ«pasnjĂ«shme tĂ« kodit).
  • Shtuar mbĂ«shtetje pĂ«r pĂ«rpiluesin e efekteve pĂ«r disa objekte tĂ« gjendjes sĂ« modelit tĂ« katĂ«rt tĂ« shenjave.
  • Siguruar mbĂ«shtetje pĂ«r llojet e modelit tĂ« katĂ«rt tĂ« shenjave BlendState, ComputeShader, DomainShader, GeometryShader, HullShader, DepthStencilState dhe RasterizerState, si dhe funksionet OMSetRenderTargets(), SetBlendState(), SetComputeShader(), SetDomainShader(), SetGeometryShader(), SetHullShader(), SetPixelShader(), SetVertexShader(), SetDepthStencilState() dhe SetRasterizerState().
  • NĂ« pĂ«rpiluesin e shenjave Ă«shtĂ« implementuar mbĂ«shtetje pĂ«r analizimin dhe ruajtjen nĂ« formate tĂ« ndryshme tĂ« vlerave tĂ« inicializimit pĂ«r variablat globalĂ«, parametrat e funksioneve dhe anotacionet.
  • Shtuar mbĂ«shtetje pĂ«r hapĂ«sirĂ«n e registrit tĂ« modelit tĂ« shenjave 5.1.
  • Implementuar funksione tĂ« integruara tex1D(), tex2D(), tex3D(), texCUBE(), asint(), f16tof32(), faceforward(), GetRenderTargetSampleCount(), rcp(), tex2Dbias(), tex1Dgrad(), tex2Dgrad(), tex3Dgrad() dhe texCUBEgrad().
  • NĂ« libvkd3d Ă«shtĂ« shtuar ndĂ«rfaqja ID3D12CommandList6 dhe Ă«shtĂ« realizuar mundĂ«sia e krijimit tĂ« teksturave, kompresimi i tĂ« cilave realizohet nĂ« nivelin e blloqeve tĂ« veçanta (pĂ«r shembull, blloqet, me madhĂ«si 4×4 piksel, kompresohen veçmas).
  • Shtuar mbĂ«shtetje pĂ«r strukturĂ«n vkd3d_shader_parameter_info dhe parametrat VKD3D_SHADER_PARAMETER_DATA_TYPE_FLOAT32, VKD3D_SHADER_PARAMETER_NAME_ALPHA_TEST_FUNC, VKD3D_SHADER_PARAMETER_NAME_ALPHA_TEST_REF, VKD3D_SHADER_PARAMETER_NAME_FLAT_INTERPOLATION dhe VKD3D_SHADER_PARAMETER_TYPE_BUFFER.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster