Projekti Wine publikoi versionin e paketës vkd3d 1.5 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 për modelet 4 dhe 5 të shaderëve dhe libvkd3d-utils me funksione për të lehtësuar portimin e aplikacioneve Direct3D 12, si dhe një grup shembujsh demonstrues, përfshirë portimin e glxgears në Direct3D 12. Kodi i projektit shpërndahet n under 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ët dhe listat e komandave, deskriptorët dhe deskriptorët e grumbullit, nënshkrimet rrënjë, aksesin e pa renditur, Sampler-et, nënshkrimet e komandave, konstantat rrënjë, renderimin indirekt, metodat Clear*() dhe Copy*().
Në libvkd3d-shader është realizuar translacioni i bytecode për modelet 4 dhe 5 të shaderëve në përfaqësimin ndërmjetës SPIR-V. Mbështeten shaderët e vertexeve, pixelëve, tessellatorëve, llogaritësve dhe shaderët e thjeshtë gjeometrikë, serilizimi dhe deserializationi i nënshkrimit rrënjë. Nga instruksionet e shaderëve janë realizuar operacione aritmetike, atomike dhe bit, operatorë krahasimi dhe menaxhimi i rrjedhës së të dhënave, instruksionet sample, gather dhe load, operacionet e aksesit të pa renditur (UAV, Unordered Access View).
NĂ« versionin e ri:
- JanĂ« bĂ«rĂ« pĂ«rmirĂ«sime tĂ« shumta nĂ« kompilatorin e shaderĂ«ve nĂ« gjuhĂ«n HLSL (High-Level Shader Language), e cila ofrohet qĂ« nga DirectX 9.0. PĂ«rfshihen pĂ«rmirĂ«sime nĂ« strukturat dhe arrays pĂ«r mbĂ«shtetje mĂ« tĂ« mirĂ« tĂ« tipeve objektorĂ« HLSL, si Texture2D, janĂ« shtuar mbĂ«shtetje pĂ«r funksionet e ndĂ«rtuara dot(), ldexp() dhe lerp(), pĂ«r modelet 4 dhe 5 tĂ« shaderĂ«ve Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r operatorĂ«t logjikĂ« âandâ, âorâ dhe ânotâ, si dhe mundĂ«sia e konvertimit tĂ« tipeve bool.
- ĂshtĂ« implementuar opsioni VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV pĂ«r ngarkimin e pamjes sĂ« aksesit tĂ« pa renditur (UAV) pĂ«r formate shumĂ«komponentĂ«sh SPIR-V (DXGI_FORMAT).
Burimi: opennet.ru
