Projekti Wine publikoi Vkd3d 1.13 me realizimin e Direct3D 12

Projekti Wine publikoi lëshimin e paketës vkd3d 1.13 me implementimin e Direct3D 12, i cili funksionon përmes translacionit të thirrjeve në API-në grafike Vulkan. Paketa përmban bibliotekat libvkd3d me implementimin e Direct3D 12, libvkd3d-shader me përkthyesin e modeleve 4 dhe 5 të shenjave dhe libvkd3d-utils me funksione për të lehtësuar portimin e aplikacioneve Direct3D 12, si dhe një grup shembujsh demonstrues, duke përfshirë portin glxgears në Direct3D 12. Kodi i projektit shpërndahet sipas licencës LGPLv2.1.

Biblioteka libvkd3d mbështet shumicën e funksionaliteteve të Direct3D 12, duke përfshirë mjetet për grafikë dhe llogaritje, radhët dhe listat e komandave, deshkruesit dhe deshkruesit e grumbullit, nënshkrimet rrënjësore, qasjen jo të renditur, Sampler-at, nënshkrimet e komandave, konstantat rrënjësore, vizatimin indirekt, metodat Clear*() dhe Copy*(). Në libvkd3d-shader është realizuar përkthimi i bytecode të modeleve të shenjuesve në përfaqësimin e ndërmjetëm SPIR-V. Mbështeten shenjuesit e pikëve, shenjuesit e rrezes, shenjuesit tessellation, shenjuesit llogaritës dhe shenjuesit e thjeshtë gjeometrikë, si dhe serializimi dhe deserializimi i nënshkrimit rrënjësor. Nga instruksionet e shenjuesve janë realizuar operacione aritmetike, atomike dhe bitore, operatorë krahasimi dhe menaxhimi i rrjedhës së të dhënave, instrukcionet sample, gather dhe load, operacionet e qasjes jo të renditur (UAV, Unordered Access View).

Në këtë version të ri:

  • Compiler-i HLSL ka fituar mbĂ«shtetje pĂ«r shkrirjen e cikleve (loop unrolling, optimizim qĂ« zĂ«vendĂ«son operacionet ciklike me disa kopje radhazi tĂ« kodit pĂ«r tĂ« pĂ«rdorur mĂ« mirĂ« cache-nĂ« e procesorit dhe pĂ«r tĂ« reduktuar degĂ«zimin).
  • Shto e shtuar mbĂ«shtetje pĂ«r kompajlerin e efekteve pĂ«r disa objekte tĂ« gjendjes sĂ« modelit tĂ« katĂ«rt tĂ« shaderĂ«ve.
  • Sigurohet mbĂ«shtetje pĂ«r llojet e modelit tĂ« katĂ«rt tĂ« shaderĂ«ve BlendState, ComputeShader, DomainShader, GeometryShader, HullShader, DepthStencilState dhe RasterizerState, si dhe pĂ«r funksionet OMSetRenderTargets(), SetBlendState(), SetComputeShader(), SetDomainShader(), SetGeometryShader(), SetHullShader(), SetPixelShader(), SetVertexShader(), SetDepthStencilState() dhe SetRasterizerState().
  • NĂ« kompajlerin e shaderĂ«ve Ă«shtĂ« implementuar mbĂ«shtetje pĂ«r analizimin dhe ruajtjen e vlerave tĂ« inicializimit nĂ« formate tĂ« ndryshme pĂ«r variablat globalĂ«, parametrat e funksioneve dhe annotimet.
  • Shtohet mbĂ«shtetje pĂ«r hapĂ«sirĂ«n e regjistrave tĂ« modelit tĂ« shaderĂ«ve 5.1.
  • JanĂ« implementuar funksione tĂ« brendshme tex1D(), tex2D(), tex3D(), texCUBE(), asint(), f16tof32(), faceforward(), GetRenderTargetSampleCount(), rcp(), tex2Dbias(), tex1Dgrad(), tex2Dgrad(), tex3Dgrad() dhe texCUBEgrad().
  • NĂ« libvkd3d Ă«shtĂ« shtuar ndĂ«rfaqja ID3D12CommandList6 dhe Ă«shtĂ« implementuar mundĂ«sia e krijimit tĂ« teksteve, kompresimi i tĂ« cilave bĂ«het nĂ« nivelin e blloqeve tĂ« veçanta (p.sh., blloqet e madhe 4×4 pixel 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

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster