Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我试图通过使用if(caps.VertexShaderVersion < D3DVS_VERSION(i, 0)){return false;}where i 是我要检查的着色器模型来检测我的图形卡在 C++ 中的最高着色器模型,但我最多只能得到 3 个。
if(caps.VertexShaderVersion < D3DVS_VERSION(i, 0)){return false;}
问题是我检查了我的显卡(技嘉 GeForce GTX 470),它有 DirectX 11,所以它不应该有 Shader Model 5 吗?还是我检查着色器模型的方式有问题?
您正在使用的 API Direct3D 9 不知道 Direct3D 11 的存在,因此,它报告 D3D9 中支持的最高着色器版本。