Projekti Wine publikoi njĂ« version tĂ« paketĂ«s vkd3d 1.5 me implementimin e Direct3D 12, i cili punon pĂ«rmes translacioneve tĂ« thirrjeve nĂ« API-nĂ« grafike Vulkan. NĂ« pĂ«rbĂ«rjen e paketĂ«s janĂ« bibliotekat libvkd3d me implementimin e Direct3D 12, libvkd3d-shader me pĂ«rkthyesin e modeleve 4 dhe 5 tĂ« shenjuesve dhe libvkd3d-utils me funksione pĂ«r tĂ« thjeshtuar portimin e aplikacioneve Direct3D 12, si dhe njĂ« grup shembujsh ĐŽĐ”ĐŒĐŸĐœŃŃŃаŃĐžĐŸĐœĂ«, 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 karakteristikave të Direct3D 12, duke përfshirë mjetet për grafikë dhe llogaritje, radhët dhe listat e komandave, treguesit dhe treguesit e grumbullit, nënshkrimet rrënjësore, qasjen e pa renditur, Sampler-ët, nënshkrimet e komandave, konstantet rrënjësore, vizatimin e drejtpërdrejtë (indirect), metodat Clear*() dhe Copy*().
Në libvkd3d-shader është implementuar transmetimi i kodit të bajtëve të modeleve 4 dhe 5 të shenjuesve në përfaqësimin e ndërmjetëm SPIR-V. Mbështeten shenjuesit e pikave, shenjuesit pixel, shenjuesit e tessellacionit, shenjuesit llogaritës dhe shenjuesit e thjeshtë, si dhe serializimi dhe deserializimi i nënshkrimit rrënjësor. Nga instruksionet e shenjuesve janë implementuar operacione aritmetike, atomike dhe bitore, operatorë krahasimi dhe kontrolli i rrjedhës së të dhënave, instruksionet sample, gather dhe load, operacione me qasje të paorganizuar (UAV, Unordered Access View).
Në këtë version të ri:
- Janë bërë përmirësime të shumta në kompilatorin e shenjuesve në gjuhën HLSL (High-Level Shader Language), i ofruar që nga DirectX 9.0. Përfshirë në struktura dhe matrica është përmirësuar mbështetja për llojet e objekteve HLSL, si Texture2D, është shtuar mbështetje për funksionet e integruara dot(), ldexp() dhe lerp(), për modelet 4 dhe 5 të shenjuesve është shtuar mbështetje për operatorët logjik "and", "or" dhe "not", si dhe mundësia e konvertimit të llojeve boolean.
- ĂshtĂ« implementuar opsioni VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV pĂ«r ngarkimin e pamjes sĂ« qasjes sĂ« paorganizuar (UAV) pĂ«r formatet shumĂ«komponentĂ«she SPIR-V (DXGI_FORMAT).
Burimi: opennet.ru
