我需要使用DirectCompute进行某些GPGPU计算的double。当我把所有东西都变成float时,着色器编译并运行得很好。但是,当我尝试在我的着色器中的任何地方使用double时,它会编译,但在运行时调用ID3D11Device::CreateComputeShader()失败并返回E_INVALIDARG。C++端代码完全相同,请注意,我只是将着色器中的几个变量更改为double。当我使用D3D11_FEATURE_DOUBLES调用ID3D11Device::CheckFeatureSupport()时,它报告我的适配器支持double,它是AMDRadeonR9270x