我正在尝试通过使用if(caps.VertexShaderVersion < D3DVS_VERSION(i, 0)){return false;}
来检测我的图形卡在C ++中具有的最高着色器模型,其中i是我要检查的着色器模型,但我只能将其提升到3。
问题是我检查了我的显卡(Gigabyte GeForce GTX 470)并且它有DirectX 11所以不应该有Shader Model 5吗?或者我正在检查着色器模型的方式有问题吗?
答案 0 :(得分:6)
Direct3D 9,即您正在使用的API,不知道Direct3D 11的存在,因此,它报告了D3D9支持的最高支持着色器版本。