Wine жобасы Direct3D 1.5 енгізуімен Vkd3d 12 нұсқасын жариялады

Wine жобасы Vulkan графикалық API интерфейсіне қоңырауларды тарату арқылы жұмыс істейтін Direct3D 1.5 іске асырылуы бар vkd3d 12 бумасының шығарылымын жариялады. Пакет Direct3D 3 іске асырулары бар libvkd12d кітапханаларын, 3 және 4 шейдер үлгілерінің аудармашысы бар libvkd5d-shader және Direct3D 3 қосымшаларын тасымалдауды жеңілдететін функциялары бар libvkd12d-utils, сондай-ақ портты қоса демонстрациялық мысалдар жиынтығын қамтиды. glxgears Direct3D 12. Жоба коды LGPLv2.1 лицензиясы бойынша таратылады.

libvkd3d кітапханасы көптеген Direct3D 12 мүмкіндіктерін қолдайды, соның ішінде графикалық және есептеу құралдары, кезектер мен пәрмендер тізімдері, дескрипторлар мен үйме дескрипторлар, түбірлік қолтаңбалар, ретсіз қатынас, Үлгілер, пәрмен қолтаңбалары, түбірлік тұрақтылар, жанама көрсету, Тазалау әдістері *( ) және Көшіру*().

libvkd3d-shader бағдарламасында 4 және 5 шейдер үлгілерінің байткодын SPIR-V аралық көрінісіне аудару жүзеге асырылады. Шыңға, пиксельге, тесселлендіруге, есептеу және қарапайым геометриялық шейдерлерге, түбірлік қолтаңбаны сериялауға және сериядан шығаруға қолдау көрсетеді. Шейдер нұсқауларына арифметикалық, атомдық және разрядтық операциялар, салыстыру және деректер ағынын басқару операторлары, үлгілеу, жинау және жүктеу нұсқаулары, ретсіз қол жеткізу операциялары (UAV, Unordered Access View) кіреді.

Жаңа нұсқада:

  • DirectX 9.0 нұсқасынан бері берілген HLSL (жоғары деңгейлі шейдер тілі) шейдер компиляторына көптеген жақсартулар жасалды. Құрылымдар мен массивтердегі Texture2D сияқты HLSL нысан түрлеріне жақсартылған қолдауды, кірістірілген нүкте(), ldexp() және lerp() функцияларын қолдауды, шейдер үлгілері үшін «және», «немесе» логикалық операторларына қолдауды қосқанда 4 және 5 және «жоқ», сонымен қатар логикалық түрлерді шығару мүмкіндігі.
  • SPIR-V көп бөлімді пішімдері (DXGI_FORMAT) үшін ретсіз қатынас көрінісін (UAV) жүктеу үшін VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV опциясын іске асырды.

Ақпарат көзі: opennet.ru

пікір қалдыру