检查是否有opengl

本文关键字:opengl 是否 检查 | 更新日期: 2023-09-27 18:30:43

我正在尝试检查带有 c# 的 pc 中是否有 opengl,但现在没有找到任何简单的解决方案。我正在寻找最简单和最好的方法,例如:

if ( exists_OpenGL ) MessageBox.Show( "yeah, go do your stuff..." );

所以拜托,谁能帮我一个代码,女巫会很快,而且足够简单?

检查是否有opengl

在大多数操作系统上,您都可以找到 API 库。然而,这并没有告诉你任何关于实际的OpenGL功能。检查可用内容的唯一方法是创建一个最小的 OpenGL 上下文并查询其属性(版本、渲染器、可用扩展)。

您可以尝试使用 C# OpenGL 库(如 OpenTK)创建上下文。如果成功,这也可能会为您提供版本号。

我很确定大多数操作系统都带有某种形式的 OpenGL,所以在不知道功能的情况下检查它是否存在可能不起作用(看看 chrome 使用兼容显卡列表尝试使用 webgl 做了多少麻烦)。另一种似乎不太稳定的替代方法可能是直接加载本机 DLL,甚至可能查询它。