(来自:Collbora)
借助这一方案,Collabora 得以将 OpenCL 1.2 和 OpenGL 3.3 支持带到所有启用的 Windows 和 DirectX 12 设备上。
GPU 制造商可为其硬件提供 D3D12 驱动程序,并支持 DirectX、OpenCL 和 OpenGL API,而 Collabora 的工作主要分为三个部分:
一个 OpenCL 编译器、一个 OpenCL 运行时,以及一个借助 D3D12 API、在 GPU 上构建和执行命令缓冲区的 Gallium 驱动程序。
两个组件使用共享的 NIR-to-DXIL 着色器编译器,其中 NIR 是 Mesa 对 GPU 着色器的内部表示,而 DXIL 是微软的内部表示形式。
D3D12 驱动程序将使用这种方法来转换那些特定于硬件的着色器,更多细节可参阅 Collabora 的《Introducing Open CL and OpenGL on DirectX》详情页。
本文素材来自互联网