3

Microsoft 的开源DirectX Shader Compiler描述了一种新的用于 HLSL 着色器的中间语言 (IL) 的格式,称为 DXIL。

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

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

目前有没有办法从旧的 DXBC 获得 DXIL?

4

2 回答 2

2

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

据我所知,DirectX Shader Compiler 存储库中的任何内容都无法将 DXBC IL 转换为 DXIL。

于 2017-08-08T21:03:11.323 回答
0

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

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

于 2019-12-11T08:20:46.307 回答