微軟宣布DX12支援開源著色器SPIR-V 推動DX走向開放標準促進GPU技術創新
微軟旗下的DirectX 專案日前迎來重大變更,最新的DirectX 12 支援開源著色器SPIR-V,微軟表示這將推動DX 技術走向開放標準並促進GPU 技術創新和跨平台開發。
在最新公告中微軟透露從著色器程式開發標準Shader Model 7 開始,將逐步使用開源著色器SPIR-V 取代微軟專有技術的DXIL,這代表著DX12 後續將走向開放錶開放標準。
微軟與Khronos 以及Google等業界公司合作,計畫透過這項改變推動GPU 程式設計創新,同時加速新硬體功能的普及,進一步分散開發者的生產力。
過去在Direct3D 中使用的是以LLVM 為基礎的DXIL 格式,這種格式也支援多種著色器功能,例如光線追蹤和工作圖,但現在微軟決定新增採用SPIR-V 開放標準。
SPIR-V 是由Khronos 開發的標準可移植中間表示法(Standard Portable Intermediate Representation,縮寫即SPIR),主要用來編譯和執行GPU 上著色器和計算程式。
微軟支援SPIR-V 的原因也很簡單,該標準具備良好的可擴展性以及支援新硬體和技術,本身就已經是現代GPU 程式廣泛使用的標準,支援SPIP-V 後對DX 來說也有好處。
微軟計劃在後續推出專屬的SPIR-V 環境用來支援D3D 現有和未來的著色器程式開發,新功能則會透過SPIR-V 擴展實現,確保開發者在技術過渡階段既可以使用D3D 也可以轉換到SPIR-V。
由於SPIP-V 核心設計具有良好的可擴充性,因此也可以更好地支援GPU API 新功能,透過統一標準的中間格式,無論開發者是在D3D 還是使用其他渲染API,都能夠更快採用新功能。
對硬體供應商以及微軟來說,也可以將資源投入差異化功能的開發,而不是重新建置本身就已經受到廣泛支援的基礎功能。