1

在我的应用程序中,我根据 GPU 的存在以不同的方式渲染图像(当有 GPU 时使用 OpenGL)。

目前我有一个配置选项。

但我希望我的应用程序通过某种方法自动检测 GPU 的存在,一些快速测试。我认为没有直接的 API 允许这样做。但是,那应该进行什么测试呢?

4

1 回答 1

1

它不像布尔值那么容易,但你可以尝试像

glGetString(GL_VENDOR);
glGetString(GL_RENDERER);

并尝试根据已知的 GPU 供应商列表来确定它。这是 OpenGL 手册页必须说的:

由于 GL 不包括对实现的性能特征的查询,因此编写了一些应用程序以识别已知平台并根据这些平台的已知性能特征修改其 GL 使用。字符串 GL_VENDOR 和 GL_RENDERER 一起唯一地指定一个平台。它们不会因版本而异,应由平台识别算法使用。

举个例子,我的设备返回:

Vendor:   NVIDIA Corporation
Renderer: NVIDIA Tegra
于 2012-06-02T17:23:47.150 回答