我的设置包括用于日常任务的板载英特尔集成GPU和用于图形密集型应用的高性能Nvidia GPU。我正在开发一个OpenGL 3.3(核心配置文件)应用程序(使用着色器,而不是固定功能管道)。默认情况下,我的应用程序在英特尔GPU上运行并且运行正常。但是,如果我尝试在Nvidia上运行它,它只显示黑屏。
现在这是有趣的部分。 OpenGL上下文被正确加载,我绘制的用于调试的世界坐标轴实际上被绘制(GL_LINE
)。出于某种原因,Nvidia不会绘制任何GL_POLYGON
或GL_QUAD
s。
有没有人经历过类似的事情,你觉得这里的罪魁祸首是什么?
答案 0 :(得分:2)
从OpenGL 3.3核心配置文件中删除GL_POLYGON
,GL_QUADS
和GL_QUAD_STRIP
。出于某种原因,英特尔无论如何都会吸引他们,但是当我用GL_TRIANGLES
代替那些时,Nvidia也会开始绘图。如果出现这样的问题,请务必检查删除的功能。