我使用单个顶点/索引缓冲区绘制了多个网格的完整对象,并且它们具有不同的纹理。因此,我想到了将纹理的ID与来自顶点着色器的顶点一起传递给片段着色器中的片段。问题是禁用插值。我在使用SDL2时使用GLSL ver 3.3,并在MingW上使用。 我试过flat out uint frag_MeshID;,而不是out uint frag_MeshID;在顶点着色器,但我仍然得到这个错误在编译片段着色器
我正在查看phong lighting shader的代码示例。它在顶点着色器中使用gl_Normal,gl_Vertex和gl_ModelViewProjectionMatrix的预定义变量。我目前的顶点着色器看起来像这样。 #version 150 core
in vec4 in_Position;
in vec4 in_Color;
in vec2 in_TextureCoord;