GLSL:彩色显示错误

时间:2013-09-30 14:03:12

标签: opengl glsl shader

我的色彩着色器有问题。

当我创建5个模型并应用我的颜色着色器进行拾取时,我添加到渲染列表的最后一个对象将在其他对象的前面呈现。

我认为这是因为第一个对象将呈现在屏幕上,然后最后一个对象会覆盖第一个对象的颜色。

从左到右看:Left-to-right

从右到左看:Right-to-left

我已启用GL_DEPTH_TESTGL_CULL_FACE 还有glClearDepth(1.0f)glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT)

我使用以下着色器:

顶点着色器:

#version 120
void main()
{
    gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;
}

Fragment Shader:

#version 120
uniform vec3 color;

void main()
{
    gl_FragColor = vec4(color,1.0);
}

0 个答案:

没有答案