您的位置:首页 > 其它

VS2015中设置D3D12根签名HLSL文件自动编译属性时的注意事项

2017-12-05 21:21 1141 查看
在DirectX12中,一个重要的HLSL高级语法对象就是根签名对象,当前有两种主要的方式来得到根签名:一种是编写一个HLSL代码文件,然后编译得到;另一种方式是在C++代码中填充D3D12_ROOT_SIGNATURE_DESC结构体后创建得到。

后一种方法纯代码,此处暂且不表。

而利用HLSL代码文件方式时,可以利用fxc.exe工具来编译,具体做法是在VS2015中建立一个HLSL代码文件:





然后在此文件图标上点击右键:



弹出如下窗户,选中左边常规选项后,右侧项类型中选中HLSL编译器:



接着选中HLSL编译器选项:



当然如果你的项目本身目标平台是Win10以上平台时,上述操作之后,你直接右键编译你的HLSL根签名代码文件就会生成对应的CSO文件,之后在代码中加载使用即可。

这里需要注意的是,在第五幅图片中,很有可能你无法选择rootsig_1_0选项,这时你需要先去设置项目属性中的目标平台,如下图:



点击应用确定之后,项目就是面向Win10以上的平台了,此时整个工程也就正常的支持DX12及Shader Model 5.1了,然后折回根签名代码文件,继续右键属性,设置rootsig_1_0选项即可。点击确定后,右键就可以正常编译生成根签名文件了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息