Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在使用顶点和片段着色器,GLSL 版本 130。Ubuntu 12.04 LTS。着色器工作正常。照明被禁用。
glutBitmapCharacter() 可以正常绘制文本,但颜色无法预测。当我调整着色器使用的调色板并重新编译时,颜色会发生变化。
glColor4f() 当然没有效果,因为着色器会覆盖固定的管道行为。那么如何设置 glutBitmapCharacter() 将呈现的“光栅颜色”?(或者每个帧都应该使用着色器然后固定管道吗?呸。)
请与我交谈:我不会将 OpenGL 光栅操作与可编程管道混合使用。正如您发现的那样,结果非常,错误,烦人。
此外,光栅操作已完全从现代 OpenGL 中删除(即上述所有内容,包括 OpenGL-3.0)。试图将它们与着色器一起使用是纯粹的受虐狂。看着其他人试图这样做甚至会很痛苦。所以请不要。
还是每个帧都应该使用着色器然后固定管道?
您可以随时在固定功能和着色器之间切换。需要时用于glUseProgram(0)切换到固定功能。这将是使用光栅操作时。但是在使用光栅操作时,您当然仅限于 OpenGL-2.1。
glUseProgram(0)