我知道,如果 OpenGL 实现找不到合适的驱动程序,它会很高兴地退回到用软件渲染所有内容。这对于图形应用程序来说很好,但对于电脑游戏来说就不能接受了。
我知道许多用户使用 Windows XP,如果用户没有为他的 GPU 安装显卡驱动程序,那么 OpenGL 将不会进行硬件加速(而 DirectX 是,否则会抛出错误)。
有没有比测量 FPS 更好(并且可能是跨平台)的方法来确定 OpenGL 是否使用硬件加速,以及如果它太低则通知用户?
我知道像 Quake3 这样的游戏可以以某种方式找到它......
似乎没有直接的方法来查询 OpenGL,但有一些方法可以帮助您确定是否存在硬件加速。请参阅此处了解 Windows 想法。在 UNIX 环境中
glxinfo | grep "direct rendering"
应该可以工作。
之前的答案表明,检查用户是否只有 OpenGL 1.1 可能就足够了。