OpenGL着色器版本编译错误

Ben*_*son 4 c++ opengl shader

我在OpenGL中编译一个简单的顶点着色器时遇到问题,我得到以下错误信息:

  • 错误(#106)GL2不支持版本号
  • 错误(#279)无效的布局限定符'location'

我假设我必须使用错误版本的GL2,但我不知道如何找到我的版本号或在哪里进行升级(是的,我试图寻找答案.)附件是我的着色器的副本代码仅供参考和我的openGL信息.

#version 330 core

layout(location = 0) in vec3 Position;

void main() {
    gl_Position.xyz = Position;
}
Run Code Online (Sandbox Code Playgroud)
  • 供应商:ATI Technologies Inc.
  • 渲染器:ATI Radeon HD 5700系列
  • 版本:3.2.9756兼容性配置文件上下文

Nic*_*las 8

#version 330 core
Run Code Online (Sandbox Code Playgroud)

这表示您的着色器使用GLSL版本3.30.

这个:

版本:3.2.9756兼容性配置文件上下文

意味着您的OpenGL版本是3.2.与OpenGL 3.2对应的GLSL版本是1.50.小于3.30.因此缺乏汇编.

更新你的司机; 那些非常古老.您的卡应该能够支持GL 4.2.