Wine 8.0 リリース候補および vkd3d 1.6 リリース

WinAPI のオープン実装である最初のリリース候補 Wine 8.0 のテストが開始されました。 コードベースは、7.22 月中旬に予定されているリリースに先立って凍結段階に入っています。 Wine 52 のリリース以来、538 件のバグ レポートがクローズされ、XNUMX 件の変更が加えられました。

最も重要な変更点:

  • Vulkan グラフィックス API への呼び出し変換を通じて動作する Direct3D 3 実装を備えた vkd12d パッケージがバージョン 1.6 に更新されました。
  • Vulkan および OpenGL のシステム コール コンバーター (サンク) の最適化が行われました。
  • WinPrint は、プリント プロセッサのサポートを拡張しました。
  • ジョイスティックのコントロールパネルが改良されました。
  • printf 関数コードで 'long' 型をサポートする作業が完了しました。
  • ゲームの動作に関連するエラー レポートは閉じられています: Tom Clancy's Rainbow Six: Vegas 2、The Void、Ragnarok Online、Drakan、Star Wars、Colin McRae、X-COM。
  • アプリケーションの動作に関連するエラー レポートは閉じられました: TMUnlimiter 1.2.0.0、MDB Viewer Plus、Framemaker 8、Studio One Professional 5。

さらに、Vulkan グラフィックス API への呼び出しの変換を通じて、Direct3D 1.6 を実装した vkd3d 12 パッケージの Wine プロジェクトによる公開にも注目できます。 このパッケージには、Direct3D 3 の実装を備えた libvkd12d ライブラリ、シェーダー モデル 3 および 4 のトランスレーターを備えた libvkd5d-shader、Direct3D 3 アプリケーションの移植を簡素化する機能を備えた libvkd12d-utils のほか、ポートを含む一連のデモ サンプルが含まれています。 glxgears を Direct3D 12 に変換します。プロジェクト コードは、LGPLv2.1 に基づいてライセンス供与されています。

libvkd3d ライブラリは、グラフィックスとコンピューティング機能、キューとコマンド リスト、ハンドルとヒープ ハンドル、ルート署名、アウトオブオーダー アクセス、サンプラー、コマンド シグネチャ、ルート定数、間接レンダリング、クリア メソッドなど、ほとんどの Direct3D 12 機能をサポートします *( ) と Copy*()。 libvkd3d-shader では、シェーダ モデル 4 および 5 のバイトコードの中間 SPIR-V 表現への変換が実装されています。 頂点、ピクセル、テッセレーション、計算および単純なジオメトリ シェーダ、ルート署名のシリアル化と逆シリアル化をサポートします。 シェーダー命令には、算術演算、アトミックおよびビット演算、比較およびデータ フロー制御演算子、サンプル、収集およびロード命令、順序なしアクセス操作 (UAV、順序なしアクセス ビュー) が含まれます。

新しいバージョンでは、DirectX 9.0 以降で提供される HLSL (High-Level Shader Language) のシェーダー コンパイラが引き続き改良されています。 HLSL 関連の改善には次のものが含まれます。

  • コンピューティング シェーダーの初期サポートが実装されました。
  • 構造体や配列などの複合オブジェクトの初期化と割り当てのサポートが改善されました。
  • アウトオブオーダー アクセス (UAV) を使用してテクスチャ リソースをロードおよび保存する機能が追加されました。
  • 関数属性のサポートが追加され、組み込み関数 asuint()、length()、normalize() が実装されました。
  • 浮動小数点モジュールのサポートが追加されました。
  • 順序なしアクセス表現 (UAV) 記述子に対するアトミック操作を示す VKD3D_SHADER_DESCRIPTOR_INFO_FLAG_UAV_ATOMICS フラグを実装しました。

出所: オープンネット.ru

コメントを追加します