【问题标题】:OpenGL in Visual Studio 2013Visual Studio 2013 中的 OpenGL
【发布时间】:2014-06-20 02:51:19
【问题描述】:

我正在寻找在我的 Visual Studio 2013 Ultimate 版本中安装 OpenGL 的说明。

但是,我找不到任何与 VS 2013 相关的说明。我发现的说明适用于 VS 2012 或 2010,但它们显然不适用于 VS 2013。这可能是因为我可能做错了。

我按照this page 上的说明进行了修改以适应我的 VS 2013,但没有运气。如何在我的 VS 2013 上安装 OpenGL?

我还有一个相关的问题是:我应该使用 FreeGlut 库吗?还有,什么是 GLEW 和 GLFW?我应该使用其中哪一个?请记住,我只是 OpenGL 的初学者,将使用红皮书和 openGL 超级圣经进行学习。

【问题讨论】:

    标签: c++ visual-studio opengl visual-studio-2013


    【解决方案1】:

    OpenGL 是 Windows API 的一部分。 Visual Studio 2013 安装 Windows 工具包(版本 8.1 中的 iirc),其中包括 GL.h 头文件和 opengl32.lib 导入库,允许您链接 opengl32.dll。所以你不需要需要在 VS 中“安装”OpenGL,它已经存在了。

    您应该知道,微软的 GL 仅限于 1.1 版(按照今天的标准,它是古老的)。如果您需要更现代的实现,则必须安装带有 OpenGL ICD 的图形驱动程序(“可安装的客户端驱动程序” - 他们都这样做),并在代码中使用扩展机制。这就是 GLEW 库可能有用的地方:它是一个 GL extension loader 库,它将为您完成所有这些工作。

    您的链接是关于 freeglut 的,它是一个完全独立的库。它是关于创建 GL 可以渲染到的窗口、捕获键盘和鼠标事件并提供简单的渲染循环。 GLFW 只是一个更现代的替代方案。

    这些库都不是 OpenGL 严格要求的。您可以使用 Windows API 创建窗口和 GL 上下文、进行事件处理、加载扩展指针等等。但是,使用这个库更方便,也增加了代码的可移植性。 GLEW、GLFW 和 GLUT 也可用于 Unix/Linux 和 OSX 以及其他一些平台,并且不仅限于 Windows。

    【讨论】:

    • 一个问题:如何查看我的显卡是否支持ICD?我的显卡是 nVidia GeForce GT 540m
    • 目前您在桌面系统上可能会遇到的 GPU 供应商只有 3 家:Intel、nVidia、AMD。它们都提供 OpenGL ICD 作为其 Windows 驱动程序的一部分。如果您安装了 nvidia 驱动程序,则可以通过扩展机制访问现代 OpenGL。
    • 好的,谢谢!那么下一步会是什么?我的意思是我如何实际使用 OpenGL 4?
    • 嗯,红皮书和极品应该告诉你怎么做。
    • 不是真的!极品告诉我包含一个名为 sb6.h 的头文件,我不想这样做。我想从头开始学习。红皮书说 所以你看,我有点卡住了!
    【解决方案2】:

    在安装了 freeglut 的 Visual Studio Express Desktop 2013 中,以下代码:

    const GLubyte *Vstr;
    Vstr = glGetString(GL_VERSION);
    fprintf(stderr, "Your OpenGL version is %s\n", Vstr);      
    

    结果

    您的 OpenGL 版本是 4.2.0 - Build 10.18.10.3621。

    4.2 版来自 2011 年。请参阅 https://www.opengl.org/wiki/History_of_OpenGL。请注意,1.1 版(如另一个答案所示)来自 1997 年。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-05-30
      • 1970-01-01
      • 2014-02-12
      • 2014-04-06
      • 2015-03-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多