【问题标题】:Bad openGL version for GLSL shadersGLSL 着色器的坏 openGL 版本
【发布时间】:2013-03-31 15:00:02
【问题描述】:

我只想使用 GLSL 着色器制作一个 OpenGL 程序。但是当我编译它时,我有以下错误消息:

GL2 不支持版本号。

这是我的顶点着色器代码:

#version 400

in vec3 Color;
out vec4 FragColor;

void main() {
    FragColor = vec4(Color, 1.0);
}

我的设备配置如下:

GL 渲染:ATI Radeo HD 4600 系列

GL 版本:2.1.8787

GLSL 版本:1.30

所以如果可能的话,我需要 opengl 4.3 版。但是我下载了很多版本,但我没有找到最后一个。另外,我应该有 GLSL 版本 4。有人知道下载最新版本 OpenGL 的链接吗?

【问题讨论】:

  • 您是否尝试过更新您的驱动程序?
  • 我把#version 330(在新的图形驱动程序下载后)和它的作品。我的 GLSL 版本现在是 3.30。感谢您的回答。再见

标签: opengl shader fragment-shader vertex-shader


【解决方案1】:

正如 Nicol Bolas 所指出的,这很可能是由于通用或过时的驱动程序造成的。

有谁知道下载最新版 OpenGL 的链接吗?

OpenGL 不是具有集中实现的传统 API,而是多个供应商(NVIDIA、AMD 等)实现的功能集规范。这允许特定供应商利用其图形硬件的独特功能,同时仍为程序员提供一致的、独立于硬件的 API。

AMD完整驱动目录可查询here

【讨论】:

    【解决方案2】:

    GL 渲染:ATI Radeo HD 4600 系列

    HD 4xxx 系列显卡根本不支持 OpenGL 4.x。它们仅限于 OpenGL 3.x。所以下载最新的可用驱动程序(遗憾的是,AMD 去年停止为这张卡制作新驱动程序,所以你会被 12.6 卡住),然后切换到 3.30 版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-09
      相关资源
      最近更新 更多