微軟通過Mesa D3D12代碼著手改善跨平台支持
上週,微軟支持的Direct3D 12 Gallium3D驅動已經合併到Mesa 21.0中。通過該驅動程序,允許像OpenGL和OpenCL這樣的圖形/計算API在Direct3D上運行。而伴隨著跨平台代碼的合併,對Gallium D3D12代碼的開發工作得到不斷推進。
儘管這個Gallium Direct3D 12代碼提供了跨平台支持,但是用例是在Windows Subsystem for Linux(WSL)中運行。因此這項開發工作不會涉及WSL之外的內容,也不會做任何瘋狂的事情來改善Linux遊戲性能。
本次合併請求已經在本週二得到了兌現,並為D3D12代碼的跨平台提供了初步支持。最初的工作是允許D3D12和NIR to DXI代碼能夠在微軟MSVC和非Windows SDK之外的編譯器工具鏈中工作。鑑於它將在Windows Subsystem for Linux 2的Linux發行版中構建,因此需要進行各種清理和更改。
允許OpenGL 在Windows Subsystem for Linux 2 實例中工作的實際方法(通過轉換為Direct3D 12)目前仍待解決。該代碼已被證明對Windows本身很有用,它允許OpenGL(以及最終的OpenCL)在D3D12驅動程序上在Windows本身上運行,這對於現在可能無法使用GL / CL驅動程序的Windows 10 on ARM 特別有用。