vkd3d 1.7 已經發布,這些是它的新聞

vkd3d

vkd3d,是 Wine 的 Direct3D 12 到 Vulkan 的轉換層

該項目 酒揭幕 前幾天新版本的上線 vkd3d 1.7 包 使用 Direct3D 12 實現,該實現通過轉換對 Vulkan 圖形 API 的調用來工作。

埃爾帕克特 包括 libvkd3d 庫 具有 Direct3D 12 實現的 libvkd3d-shader 和著色器模型轉換 4 和 5,以及具有簡化 Direct3D 3 應用程序遷移功能的 libvkd12d-utils,以及一組演示,包括 glxgears 到 Direct3D 12 的端口。

libvkd3d 庫 支持大多數 Direct3D 12 功能, 包括圖形和計算、命令列表和隊列、描述符和堆描述符、根簽名、無序訪問、示例、命令簽名、根常量、間接表示、Clear*() 和 Copy*() 方法。

除了它 libvkd3d-shader 實現字節碼4和5的翻譯 SPIR-V 中間表示中的著色模型。 支持頂點、像素、曲面細分、計算和簡單幾何著色器、根簽名序列化和反序列化。

算術、原子和位操作、比較和數據流控制操作符、採樣、收集和加載指令、亂序訪問操作(UAV,亂序訪問視圖)是從影子指令實現的。

vkd3d 1.7的主要新特性

在 vkd3d 1.7 的這個新版本中脫穎而出 él 繼續致力於改進 HLSL 著色器編譯器 (高級著色器語言),以及添加調用用戶定義函數的能力 並使用數組作為用戶定義函數的參數。

新版本中另一個突出的變化是 顯著改進了對配置文件的支持 著色器模型 Direct3D 1/2/3, 還添加了對 min16float 等低精度浮點類型的初始支持。

還強調的是 添加了對 SV_DispatchThreadID、SV_GroupID 和 SV_GroupThreadID 參數的支持 並且添加了一個公共 API 來解析 (vkd3d_shader_parse_dxbc) 和序列化 (vkd3d_shader_serialize_dxbc) DXBC 二進制數據。

其他突出的變化 新版本:

  • 支持 Load() 紋理對象的可選“偏移”參數
    方法。
  • 支持內部函數 all()。
  • 支持 distance() 內部函數。
  • 支持內在函數 exp() 和 exp2()。
  • 支持 frac() 內部函數。
  • 支持 lit() 內部函數。
  • 支持 reflect() 內在函數。
  • 支持內部函數 sin() 和 cos()。
  • 支持 smoothstep() 內部函數。
  • 支持內部 sqrt() 和 rsqrt() 函數。
  • 支持 step() 內部函數。
  • 支持內部函數 transpose()。
  • 支持不區分大小寫的浮點和雙字數據變體
    類型
  • 部分支持最小精度數據類型,例如“min16float”。 這些目前被解釋為它們的常規對應物。
    改進了常量傳播支持,特別是通過 swizzles 進行常量傳播。
  • 編譯選項 VKD3D_SHADER_COMPILE_OPTION_WRITE_TESS_GEOM_POINT_SIZE 可用於指定針對 Vulkan 環境的 SPIR-V 著色器是否應為幾何和曲面細分著色器寫入點大小,如果未指定,將寫入點大小。

最後, 對於那些有興趣了解更多信息的人,他們應該知道項目代碼是根據 LGPLv2.1 許可的,他們可以查閱這個新版本的詳細信息 在下面的鏈接中。

如何安裝 vkd3d 1.7?

有興趣能夠安裝 vkd3d 他們必須知道他們必須編譯源代碼,所以我們必須先獲取它,重要的是要提到 Vkd3d 依賴於 SPIRV-Headers 和 Vulkan-Headers (>= 1.2.139)。

要進行編譯,我們必須打開一個終端並在其中鍵入以下命令:

git clone https://gitlab.winehq.org/wine/vkd3d.git

完成後,我們繼續進入最近下載的目錄:

cd vkd3d

然後我們通過執行以下命令繼續編譯:

./configure

make

make install

Si 你想了解更多關於彙編的信息 vkd3d 你可以查看詳細信息 這個鏈接


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責資料:AB Internet Networks 2008 SL
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。