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 機能をサポートします *( ) と Copy*()。

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

収録曲:

  • Внесены многочисленные улучшения в компилятор шейдеров на языке HLSL (High-Level Shader Language), предоставляемом начиная с DirectX 9.0. В том числе в структурах и массивах улучшена поддержка объектных типов HLSL, таких как Texture2D, добавлена поддержка встроенных функций dot(), ldexp() и lerp(), для 4 и 5 моделей шейдеров добавлена поддержка логических операторов «and», «or» и «not», а также возможность приведения булевых типов.
  • Реализована опция VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV для загрузки неупорядоченного представления доступа (UAV) для многокомпонентных форматов SPIR-V (DXGI_FORMAT).

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

コメントを追加します