【问题标题】:ATI Radeon HD 5770 GPU OpenGL 4.1 support?ATI Radeon HD 5770 GPU OpenGL 4.1 支持?
【发布时间】:2014-09-13 21:29:35
【问题描述】:

我在 2012 Mac Pro 上安装了 ATI Radeon HD 5770 GPU。

当我在我的程序中运行以下代码时:

    std::cout << glGetString(GL_RENDERER) << std::endl;
    std::cout << glGetString(GL_VENDOR) << std::endl;
    std::cout << glGetString(GL_VERSION) << std::endl;
    std::cout << glGetString(GL_SHADING_LANGUAGE_VERSION) << std::endl;

我得到的输出如下:

    ATI Radeon HD 5770 OpenGL Engine
    ATI Technologies Inc.
    2.1 ATI-1.24.35
    1.20

但是使用 OpenGL Extensions Viewer 我得到以下

有什么方法可以使用 4.1 吗?为什么老是告诉我版本是2.1?

【问题讨论】:

    标签: opengl glsl gpu ati


    【解决方案1】:

    当您初始化 OpenGL 上下文时,您可以请求兼容性配置文件(最高 GL 2.1)或核心配置文件。

    您需要启用核心上下文才能使用 OpenGL 4.1 功能。 实现这一点的过程取决于创建上下文的库(SDL、GLU、Apple 的 GL 框架等),但它通常是传递给 init 函数的简单标志。

    【讨论】:

    • 我使用 GLFW 作为我的窗口系统,并添加了以下代码行:glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE); glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4); glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 1); glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE); 但我一直得到与 2.1 相同的输出
    • 你需要在调用glfwCreateWindow之前调用这些,这是你尝试过的吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-06
    相关资源
    最近更新 更多