带片段着色器的OpenGL drawPixels

时间:2011-06-10 17:54:44

标签: opengl pipeline fragment-shader

我对OpenGL管道感到困惑。我有一个openGL方法,我试图将glDrawPixels与片段着色器一起使用,所以我的代码看起来像:

// I setup the shader before this
glUseProgram(myshader);
glDrawPixels(...);

在某些图形卡上,着色器会被应用,但在其他图形卡上却没有。我对nvidia没问题,但各种ATI卡有问题。这是ATI卡的错误吗?或者nvidia更灵活,我误解了管道?是否有其他方法可以解决这个问题(纹理映射除外)?

感谢, 杰夫

1 个答案:

答案 0 :(得分:1)

glDrawPixels应该应用片段着色器。 page 203 of the compatibility profile的图3.1清楚地表明了这一点。

但请注意,核心配置文件会删除DrawPixels。您使用的是哪个GL版本?