21 年 2020 月 XNUMX 日、安定版の正式リリースが行われました。
このバージョンには約 7400 年の開発期間があり、XNUMX を超える個別の変更が加えられています。 開発主任 Alexandre Julliard 氏は次の XNUMX つを特定しています。
- PE 形式のモジュールのサポート。 これにより、ディスクおよびメモリ内のシステム モジュールに一致するさまざまなコピー保護スキームの問題が解決されます。
- 動的な設定変更を含め、複数のモニターと複数の GPU をサポートします。
- DirectX サウンド ライブラリのオープン実装である FAudio プロジェクトに基づいた XAudio2 の再実装。 FAudio に切り替えると、ゲームでより高い音質を実現したり、音量ミキシングや高度なサウンド効果などが可能になります。
- Vulkan 1.1 のサポート。
PEモジュール
MinGW コンパイラを使用すると、ほとんどの Wine モジュールが ELF ではなく PE (Portable Executable、Windows バイナリ形式) 実行可能ファイル形式でビルドされるようになりました。
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 パスワードベースのキー生成スキームのサポートが追加されました。追加した。
その他の重要なイノベーション
- NT カーネル スピンロックのサポート。
- DXTn および S3 テクスチャの圧縮に関する特許の有効期限が切れたことにより、これらをデフォルトの実装に含めることが可能になりました。
- プラグアンドプレイドライバーのインストールをサポートします。
- DirectWrite のさまざまな改善。
- Windows Media Foundation API のサポートが改善されました。
- futex での実装により、プリミティブの同期が向上しました。
- それぞれのオープンソース .NET 実装の代わりに、Wine-Mono を共有してスペースを節約する
~/.wine
. - Unicode 12.0 および 12.1 のサポート。
- Winsock API および IIS の代わりとして初期 HTTP サービス (HTTP.sys) を実装すると、Windows Sockets API よりもパフォーマンスが向上します。
- Windows デバッガとの互換性が向上しました。
- LLVM MinGW サポートの向上と WineGCC クロスコンパイルの改善。
ユーザーインターフェイスの改善についても言及できます。 たとえば、最小化されたウィンドウは、Windows 3.1 スタイルのアイコンではなく、タイトル バーを使用して表示されるようになりました。 ハット スイッチ、ステアリング ホイール、ペダルなどのゲーム コントローラーのサポートが向上しました。
組み込みの AVI、MPEG-I、および WAVE デコーダは Wine から削除され、システムの GStreamer または QuickTime に置き換えられました。
Wine で実行されているアプリケーションのリモート デバッグに Visual Studio からデバッガを使用する機能が追加され、DBGENG (デバッグ エンジン) ライブラリが部分的に実装され、Windows 用にコンパイルされたファイルから libwine への依存関係が削除されました。
パフォーマンスを最適化するために、さまざまなタイミング関数が高性能システム タイマー関数を使用するように移行され、多くのゲームのレンダリング ループのオーバーヘッドが削減されました。 その他のパフォーマンスの最適化も行われています。
変更点の完全なリストを参照してください。
サイト
- Final Fantasy XI
- Adobe Photoshop CS6 (13.0)
- ワールド オブ ウォークラフト 8.3.0
- EVEオンラインの現在
- マジック:ザ・ギャザリング オンライン 4.x
これらのアプリケーションは Wine で最も頻繁に起動されると考えられます。
注記。 Wine 5.0 のリリースは、2019 年 30 月にポーランド南部の洞窟探検中に 3 歳で悲劇的に亡くなったユゼフ・クシアの追悼に捧げられています。 Jozef は、DirectXNUMXD Wine の開発に重要な貢献者であり、プロジェクトの主著者でもありました。
出所: habr.com