OpenGL着色器:don';插值颜色

OpenGL着色器:don';插值颜色,opengl,graphics,glsl,Opengl,Graphics,Glsl,我正在尝试一个非常基本的OpenGL示例:渲染单个三角形。三角形有三个点和三种不同的颜色 现在OpenGL将这些颜色混合在一起,以创建类似渐变的效果。我想把它关掉,但我不知道怎么做 这是我的片段着色器,它非常基本: #version 150 in vec4 color; out vec4 outColor; void main() { outColor = color; } 有两种选择,你选择哪一种更取决于你在做什么 首先,在将多边形的每个顶点交给OpenGL时,可以简单地使其颜色

我正在尝试一个非常基本的OpenGL示例:渲染单个三角形。三角形有三个点和三种不同的颜色

现在OpenGL将这些颜色混合在一起,以创建类似渐变的效果。我想把它关掉,但我不知道怎么做

这是我的片段着色器,它非常基本:

#version 150

in vec4 color;
out vec4 outColor;

void main()
{
    outColor = color;
}

有两种选择,你选择哪一种更取决于你在做什么

首先,在将多边形的每个顶点交给OpenGL时,可以简单地使其颜色保持不变

其次,您还可以将变量标记为
flat

flat in vec4 color;

它将从激发顶点获得颜色。请参阅。

flag关键字正是我要找的,谢谢!