葡萄酒5.0发布

葡萄酒5.0发布21年2020月XNUMX日,稳定版正式发布 葡萄酒5.0 - 用于在 UNIX 环境中运行本机 Windows 程序的免费工具。 这是 Windows API 的替代、免费实现。 递归缩写 WINE 代表“Wine Is Not an Emulator”。

这个版本大约有一年的开发时间,有超过 7400 个单独的改动。 首席开发人员 Alexandre Julliard 确定了四个:

  • 支持PE格式的模块。 这解决了与磁盘和内存中的系统模块相匹配的不同复制保护方案的问题。
  • 支持多个显示器和多个 GPU,包括动态设置更改。
  • 基于 FAudio 项目重新实现 XAudio2,FAudio 项目是 DirectX 声音库的开放实现。 切换到 FAudio 可以让您在游戏中实现更高的音质、启用音量混合、高级音效等。
  • Vulkan 1.1 支持。


了解有关关键创新的更多信息。

PE模块

有了 MinGW 编译器,大多数 Wine 模块现在都以 PE(可移植可执行文件,Windows 二进制格式)可执行文件格式而不是 ELF 构建。

PE可执行文件现已复制到该目录 ~/.wine 而不是使用虚拟 DLL 文件,使应用程序更类似于真实的 Windows 安装。

尚未将所有模块转换为 PE 格式。 工作仍在继续。

图形子系统

如上所述,添加了对使用多个显示器和图形适配器的支持。

Vulkan 驱动程序已更新至 Vulkan 1.1.126 规范。

此外,WindowsCodecs 库现在支持其他光栅格式,包括调色板索引格式。

Direct3D

全屏 Direct3D 应用程序现在会阻止屏幕保护程序调用。

对于 DXGI 应用程序,现在可以使用标准 Alt+Enter 组合在全屏和窗口模式之间切换。

Direct3D 12 功能已得到增强,包括支持全屏和窗口模式之间的切换、更改屏幕模式、缩放视图和交换间隔。 所有这些功能均已在以前版本的 Direct3D API 中实现。

项目团队辛勤工作,修复了数百个错误,因此 Wine 对各种边缘情况的处理得到了改进。 其中包括在 2D 采样器中对 3D 资源进行采样,反之亦然,使用超出范围的输入值进行透明度和深度测试,使用反射纹理和缓冲区进行渲染,使用不正确的剪辑器(DirectDraw 对象)等等。

加载使用 S3TC 方法压缩的 3D 纹理时所需的地址空间大小已减小(不是完全加载,而是分块加载纹理)。

对旧版 DirectDraw 应用程序进行了与光照计算相关的各种改进和修复。

Direct3D 中识别的显卡基础已得到扩展。

网络和密码学

Gecko 引擎已更新至版本 2.47.1 以支持现代工具。 许多新的 HTML API 已经实现。

MSHTML 现在支持 SVG 元素。

添加了许多新的 VBScript 功能(例如错误和异常处理程序)。

已实现通过 DHCP 获取 HTTP 代理设置的功能。

在加密部分,实现了通过 GnuTLS 对椭圆曲线加密密钥 (ECC) 的支持,添加了从 PFX 格式文件导入密钥和证书的功能,并支持 PBKDF2 基于密码的密钥生成方案添加。

葡萄酒5.0发布
Adobe Photoshop CS6 葡萄酒版

其他重大创新

  • 支持 NT 内核自旋锁。
  • 由于 DXTn 和 S3 纹理压缩专利的到期,可以将它们包含在默认实现中。
  • 支持即插即用的驱动程序安装。
  • 各种 DirectWrite 改进。
  • 改进了对 Windows Media Foundation API 的支持。
  • 由于 futex 的实现,原语更好地同步。
  • 共享 Wine-Mono 以节省空间,而不是每个人都使用开源 .NET 实现 ~/.wine.
  • 支持 Unicode 12.0 和 12.1。
  • 实现初始 HTTP 服务 (HTTP.sys) 作为 Winsock API 和 IIS 的替代品,从而获得比 Windows Sockets API 更好的性能。
  • 与 Windows 调试器更好的兼容性。
  • 更好的 LLVM MinGW 支持和 WineGCC 交叉编译改进。

我们还可以提到用户界面的改进。 例如,最小化的窗口现在使用标题栏而不是 Windows 3.1 样式的图标来显示。 改进了对游戏控制器的支持,包括帽子开关、方向盘和踏板。

内置的 AVI、MPEG-I 和 WAVE 解码器已从 Wine 中删除,代之以系统 GStreamer 或 QuickTime。

添加了使用 Visual Studio 中的调试器远程调试 Wine 中运行的应用程序的功能,部分实现了 DBGENG(调试引擎)库,并且从为 Windows 编译的文件中删除了对 libwine 的依赖。

为了优化性能,各种计时函数已迁移为使用高性能系统计时器函数,从而减少了许多游戏渲染循环的开销。 还进行了其他性能优化。

查看完整的更改列表。 这里.

Wine 5.0源代码, 镜子
各种发行版的二进制文件
Документация

该网站 AppDB 维护与 Wine 兼容的 Windows 应用程序数据库。 这里是领导们 票数:

  1. 最终幻想XI
  2. Adobe Photoshop CS6 (13.0)
  3. 魔兽世界 8.3.0
  4. EVE当前在线
  5. 万智牌 Online 4.x

可以假设这些应用程序最常在 Wine 中启动。

笔记。 Wine 5.0 的发布是为了纪念 Józef Kucia,他于 2019 年 30 月在波兰南部探索洞穴时不幸去世,享年 3 岁。 Jozef 是 DirectXNUMXD Wine 开发的重要贡献者,也是该项目的主要作者 vkd3d。 在从事 Wine 工作期间,他贡献了超过 2500 个补丁。

葡萄酒5.0发布

来源: habr.com

添加评论