Opengl: 错误(#97) 没有找到主程序

Tom*_*omS 4 opengl glsl

这是我的应用程序启动时遇到的错误:

Vertex shader(s) failed to link, fragment shader(s) failed to link.
Vertex link error: INVALID_OPERATION.
ERROR: error(#97) No program main found
fragment link error: INVALID_OPERATION.
ERROR: error(#97) No program main found
Run Code Online (Sandbox Code Playgroud)

我找不到任何错误,但着色器已正确(完全)加载和编译,没有任何错误。这是我的着色器:

顶点着色器:

#version 330
layout (location = 0) in vec3 position;
void main()
{
gl_Position = vec4(position, 1.0);
}
Run Code Online (Sandbox Code Playgroud)

片段着色器:

#version 330
out vec4 outputColor;
void main()
{
outputColor = vec4(1.0, 0.5, 0.2, 1.0);
}
Run Code Online (Sandbox Code Playgroud)

Joe*_*ewd 5

像这样的错误通常是由 glShaderSource没有收到正确的源代码字符串造成的。

您的问题的原因很可能是您的着色器代码未正确加载,并且将错误的字符串(或字符数组)传递给 glShaderSource