Yeni sürümler: Wine 10.20, Vkd3d 1.18 ve vkd3d-proton 3.0

Опубликован экспериментальный выпуск открытой реализации Win32 API — Wine 10.20. С момента выпуска 10.19 было закрыт 31 отчёт об ошибках и внесено 337 изменений.

Ən mühüm dəyişikliklər:

  • Встроенный пакет Vkd3d с реализацией Direct3D 12 обновлён до версии 1.18.
  • Добавлено диалоговое окно для отображения прогресса сканирования документов.
  • Продолжена реализация механизма Reparse Point, при помощи которого можно прикреплять к файлам и каталогам дополнительные данные, идентифицируемые через теги. Обеспечена поддержка Reparse Point в функциях CreateHardLink(), SetFileAttributes(), FindNextFile(), MoveFileWithProgress()
  • Продолжен рефакторинг реализации Common Control после разделения библиотеки COMCTL32 на отдельные модули для версий 5 и 6.
  • Решена проблема с аварийным завершением многих игр (например, Syberia 2) при использовании режима WoW64 на системах с GPU NVIDIA.
  • Решена проблема с подвисанием реакции при нажатии клавиш управления курсором в некоторых играх, таких как Might and Magic VI.
  • Решена проблема с зависанием или невозможностью запуска некоторых windows-сборок приложений, использующих библиотеку GTK, например, Meld и Geany.
  • Закрыты отчёты об ошибках, связанные с работой приложений: SQL Server 2012/2014, MS Office 365 installer, QuarkXPress 2024, TomTom MyDrive Connect 4.x, Spine, GenLauncher, grepwinNP3, PlayOnline Viewer, tlReader 10.1.0.2004, cmd.exe, CLM Explorer, HiveMQ CE 2025.5.
  • Закрыты отчёты об ошибках, связанные с работой игр: Civilization 1.2, StarCraft, Last Stand: Aftermath, Mega Man X DiVE, Wagotabi, Geneforge 1 — Mutagen.

Проект Wine также опубликовал выпуск пакета vkd3d 1.18 с реализацией Direct3D 12, работающей через трансляцию вызовов в графический API Vulkan. В состав пакета входят библиотеки libvkd3d с реализаций Direct3D 12, libvkd3d-shader c транслятором 4 и 5 модели шейдеров и libvkd3d-utils с функциями для упрощения портирования приложений Direct3D 12, а также набор демонстрационных примеров, включая порт glxgears на Direct3D 12. Код проекта распространяется под лицензией LGPLv2.1.

libvkd3d kitabxanası Direct3D 12-nin çox hissəsini, qrafika və hesablama vasitələrini, sıraları və komanda siyahılarını, deskriptorlar və saxlama deskriptorlarını, kök imzaları, qeyri-müəyyən giriş imkanı, nümunəçilər, komanda imzaları, kök konstantları, qeyri-düzgün (indirect) renderləmə, Clear*() və Copy*() metodlarını dəstəkləyir. libvkd3d-shader-da shader modellərinin byte kodunun SPIR-V arası təqdimata çevrilməsi həyata keçirilmişdir. Piksel, vertex, tessellation, hesablama və sadə geometriya shaderləri, kök imzasının serializasiyası və deserializasiyası dəstəklənir. Shader təlimatlarından riyazi, atomar və bit əməliyyatları, müqayisə və axın idarəetmə əmrləri, sample, gather və load təlimatları, qeyri-müəyyən giriş imkanı (UAV, Unordered Access View) əməliyyatları həyata keçirilmişdir.

Yeni vkd3d versiyasında:

  • В реализацию языка шейдеров HLSL добавлены встроенные функции countbits(), firstbithigh(), firstbitlow(), frexp() и texCUBEbias(). Для профилей Shader Model 1-3 реализована поддержка условных выражений с целочисленными типами.
  • В компиляторе шейдеров HLSL оптимизирована компиляция кода с условными операторами if/else. Расширено вычисление констант на этапе компиляции (constant folding). Подобная оптимизация теперь может применяться для выражений типа «true ? x : y» и функций asfloat(), asint(), asuint(), cos(), mad(), round() и sin().
  • В библиотеке libvkd3d в реализацию программного интерфейса ID3D12Device4 добавлен метод CreateCommandList1().
  • Добавлены инструкции байткода Direct3D: bem, tex, texbem, texbeml и texcoord.
  • Продолжено развитие реализации языка шейдеров MSL (Metal Shading Language), применяемого компанией Apple в графическом API Metal. Добавлена поддержка вычислительных шейдеров, мгновенно инициализируемых буферов констант, тригонометрических функций, операций получения остатка и побитового перебора.
  • В реализацию языка шейдеров GLSL (OpenGL Shading Language) добавлены беззнаковые целочисленные операции деления и получения остатка, функции sin() и cos(), возможность смещения текселей при загрузке текстур.

Кроме того, компания Valve опубликовала выпуск VKD3D-Proton 3.0, ответвления от кодовой базы vkd3d, созданного для улучшения поддержки Direct3D 12 в пакете для запуска игр Proton. В VKD3D-Proton поддерживаются специфичные для Proton изменения, оптимизации и улучшения для более качественной работы Windows-игр на базе Direct3D 12, которые пока не приняты в основной состав vkd3d. Из отличий также отмечается ориентация на использование современных расширений Vulkan и возможностей свежих выпусков графических драйверов для достижения полной совместимости с Direct3D 12.

Среди изменений в новой версии vkd3d-proton:

  • Переписан бэкенд шейдеров DXBC (DirectX ByteCode), который заменил собой бэкенд vkd3d-shader. Новый бэкенд решил проблемы во многих играх, ранее возникавшие из-за отсутствия в vkd3d-shader нужной функциональности, например, налажена работа игры Red Dead Redemption 2 в режиме D3D12.
  • Добавлена поддержка технологии суперсэмплинга FSR4 (AMD FidelityFX Super Resolution).
  • Добавлена экспериментальная поддержка графов рабочих задач D3D12 (Work Graphs).
  • Добавлена экспериментальная поддержка микрокарт прозрачности (OMM — Opacity MicroMaps).
  • Решены проблемы в играх Star Citizen, Ninja Gaiden 4, Monster Hunter Wilds, Wreckfest 2, Satisfactory, Street Fighter 6, Death Stranding, Wuthering Waves, Dune, Spider-Man Remastered, Gray Zone Warfare, Rise of the Tomb Raider, Port Royal, Mafia: Definitive Edition, Final Fantasy Tactics.

Mənbə: opennet.ru

DDoS qoruması olan saytlara etibarlı hosting satın alın, VPS VDS serverlər 🔥 DDoS qoruması olan saytlara etibarlı hosting satın alın, VPS VDS serverlər | ProHoster