将DXBC转换为DXIL(DirectX字节码转换为DirectX中间语言)

时间:2017-08-08 19:58:52

标签: directx direct3d hlsl directx-12 direct3d12

Microsoft的开源DirectX Shader Compiler描述了名为DXIL的HLSL着色器的新中间语言(IL)的格式。

该文档将以前HLSL IL的转换器(称为DXBC)引用到新的DXIL:https://github.com/Microsoft/DirectXShaderCompiler/blob/master/docs/DXIL.rst

但是,我无法找到引用的dxbc2dxil工具,或任何其他方式将DXBC转换为DXIL。我尝试将DXBC文件传递给DirectX Shader Compiler项目中的各种工具,但没有人接受普通DXBC作为输入。

目前是否有办法从旧的DXBC获取DXIL?

2 个答案:

答案 0 :(得分:1)

我对此文档的理解是,Microsoft将负责将来仅向供应商的驱动程序提供DXIR。 DXBC2DXIL是Microsoft内部唯一的模块。

据我所知,DirectX Shader Compiler存储库中没有任何东西能够将DXBC IL转换为DXIL。

答案 1 :(得分:0)

请参阅此项目以获取有效的技巧:https://github.com/Nukem9/Dxbc2Dxil

他们使用win10中的“ dxilconv.dll”来创建未记录的DXBC-> DXIL转换器的实例。