如何计算已编译着色器代码的校验和?

时间:2019-04-30 11:12:47

标签: shader bytecode directx-11 checksum

我已经将像素着色器效果文件(fx)编译为已编译的着色器对象(cso)文件,即着色器字节码。我可以使用以下代码进行编译:

D3DReadFileToBlob(L"xxx.cso", &pVSBlob);

我能够成功执行它,但是我想在着色器字节码中修改一些常量。修改着色器字节码时,由于校验和计算错误,我的createPixelShader失败。

如何计算着色器字节码的校验和?

1 个答案:

答案 0 :(得分:0)

这没有很好的记录,但是AMD在其着色器实用程序库中具有功能代码。

通常是一些md5哈希。

他们的github存储库here中有源代码