【问题标题】:How to use OpenGL 2.0 rather than a later version?如何使用 OpenGL 2.0 而不是更高版本?
【发布时间】:2011-04-13 02:09:29
【问题描述】:

我们的目标是制作一款兼容多种显卡和跨平台的游戏。我决定使用 OpenGL 2.0 和 Glut。

然而,我很快意识到,OpenGL 版本 1.0、2.0、2.1 没有特定的 DLL... 这让我想知道,您究竟如何选择所需的 OpenGL 版本?

另外,我知道 Windows Visual Studio 仅附带 OpenGL 1.1 版。这就是我决定使用 Glut 的原因,这样我就可以使用更高版本的 OpenGL(例如 2.0)中的函数。

问题依然存在,如何使用某个版本的 OpenGL?

【问题讨论】:

    标签: c++ opengl


    【解决方案1】:

    您根本不使用自 2.0 以来引入的任何新功能

    【讨论】:

    • 所以如果我理解正确的话,我可以下载最新的 OpenGL 版本,只要我不使用比 2.0 更新的功能,我就可以了。我怎么知道 2.0 版提供了哪些功能?
    • 正确,从这里开始en.wikipedia.org/wiki/OpenGL#OpenGL_2.0(2.0 和 2.1 之间存在一些差异 - 但几乎所有常见的 openGL 都是 2.0)
    • @user42282:您不必下载或安装 OpenGL SDK。 OpenGL 是一个 API,图形驱动程序附带一个接口库,编译器通常附带一个链接库和头文件。
    【解决方案2】:

    另外,我知道 Windows Visual Studio 仅附带 OpenGL 1.1 版。这就是我决定使用 Glut 的原因,这样我就可以使用更高版本的 OpenGL(例如 2.0)中的函数。

    GLUT不会在这方面有所帮助(或者,我很想说,在任何其他方面也一样)。您正在寻找的是GLEEGLEW。大多数实现也允许您自己执行此操作;这些库只是让它变得更容易——但它们确实让它变得更容易很多

    【讨论】:

      【解决方案3】:

      在 OpenGL 2.x 和更早版本中,您只需创建一个上下文。该上下文必须与您希望使用的任何 OpenGL 版本向后兼容。在 OpenGL 3.0 及更高版本中,严格的 API 向后兼容性被取消,有一种新的上下文创建方法,允许您将 OpenGL 版本指定为属性。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-01-03
        • 1970-01-01
        • 2012-05-22
        • 2021-10-20
        • 2015-12-02
        • 2019-10-23
        • 1970-01-01
        相关资源
        最近更新 更多