vkd3d1.3の新しいバージョンはすでにリリースされています

開発のXNUMX年半後、そしてワインプロジェクトは、 パッケージの新しいバージョン«vkd3d 1.3インチ VulkanグラフィックAPIへの呼び出しの変換を通じて機能するDirect3D12実装を使用します。

このバージョンにはさまざまな改善が含まれており、この新しいバージョンのハイライトは 初期のHLSビルドサポートL、および シェーダーモデル5.1記述子アレイのサポート、Direct3Dシェーダーのアンマウントのサポートなど。

パッケージを知らない人のために、彼らはそれを知っているべきです Direct3D 3実装のlibvkd12dライブラリ、libvkd3d-shaderが含まれています モデル4および5のシェーダートランスレータとlibvkd3d-utilsを使用して、Direct3D 12アプリケーションの移行を簡素化する機能と、glxgearsポートを含む一連のデモをDirect3D12に移行します。プロジェクトコードはLGPLv2.1でライセンス供与されて配布されます。

図書館 libvkd3dは、Direct3D12のほとんどの機能をサポートしています。 グラフと計算機能、コマンドリストとキュー、記述子とヒープ記述子、ルート署名、順序付けられていないアクセス、サンプラー、コマンド署名、ルート定数、プロキシ表現などが含まれます。

Libvkd3d-シェーダー バイトコード4および5の変換を実装します SPIR-V中間表現のシェーディングモデルの例。 頂点、ピクセル、テッセレーション、計算および単純なジオメトリシェーダー、ルート署名のシリアル化、および逆シリアル化がサポートされています。

シェーダー命令には、算術演算、アトミック演算、ビット単位演算が含まれます。 データフロー制御および比較オペレーター、サンプリング、収集およびロード命令、順序付けられていないアクセス操作(UAV、順序付けられていないアクセスビュー)

開発の現段階では、Direct3D12へのすべての呼び出しが実装されているわけではありません テストは、主に一連のデモアプリケーションで実行されました。

Vkd3d1.3の主な新機能

提示されているこの新しいバージョンのvkd3d1.3では、次のことが強調されています。 HLSLでのシェーダーのコンパイルと事前レンダリングの初期サポートが追加されました (高レベルシェーダー言語)。これは、DirectX9.0以降で提供されています。

この新しいバージョンで際立っているもうXNUMXつの変更点は、 シェーダーでの倍精度浮動小数点演算のサポート、テッセレーションシェーダーの間接参照、シェーダーからのテンプレートエクスポート、「正確な」シェーダー修飾子、およびメモリ内リソースのグローバルバリア。

また、 コードからDirect3Dシェーダーを分解する機能 アセンブラ表現へのバイトの追加、およびDirect3D 3、1、および2シェーダーモデルで使用されていた古いDirect3Dバイトコード形式の解析のサポートが追加されました。

libvkd3dはDirect3D12の機能を追加しました、ルート署名、順序付けされていないルックアップカウンター、出力マージブール値、mirror_onceテクスチャアドレッシングモード、追加されたvkd3d_host_time_domain_info構造など。

その他の変更点 この新しいバージョンから際立っている:

  • vkd3d_shader_preprocess_infoは、vkd3d_shader_compile_info構造を拡張し、プリプロセッサーマクロ定義などの前処理パラメーターを指定するために使用できます。
  • vkd3d_shader_hlsl_source_infoは、vkd3d_shader_compile_info構造を拡張し、HLSLを指定し、ターゲットプロファイルやエントリポイントなどのパラメーターを構築するために使用できます。
  • Direct3D12モデルとVulkanモデルをリンクする
  • VKD3D_SHADER_COMPILE_OPTION_API_VERSIONを使用して、アプリケーションが対象とするlibvkd3d-shaderAPIバージョンを指定できます。 指定しない場合、VKD3D_SHADER_API_VERSION_1_2が使用されます。
  • vkd3d-compilerは、
    出力はカラー対応のテレプリンターです。
  • Shader Model5.1で定義された記述子配列のサポートが追加されました。

最後に あなたがそれについてもっと知りたいなら この新しいバージョンについては、変更の完全なリストを参照できます 次のリンクで。

Linuxにvkd3dをインストールするにはどうすればよいですか?

システムにvkd3dをインストールできるようにすることに関心がある場合は、ソースコードを取得してコンパイルを続行する必要がありますが、実用的な目的や初心者の場合は、それほど労力をかけずにこのライブラリを試すことができます。 このために、彼らはlutrisとその構成内にインストールする必要があるだけです。

コンパイルに興味がある人は、次のコードを入手する必要があります。

git clone git://source.winehq.org/git/vkd3d.git/
./autogen.sh
./configure
make
../vkd3d/configure --build=i686-pc-linux-gnu "CPPFLAGS=-m32" "LDFLAGS=-m32"

最後に、Vulkanレイヤーを有効にする必要があります。

export VK_INSTANCE_LAYERS=VK_LAYER_LUNARG_standard_validation
VKD3D_CONFIG=vk_debug


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。