我正在使用ARB_debug_output
扩展名,驱动程序给我以下警告:
程序/着色器状态性能警告:程序16中的顶点着色器基于GL状态被重新编译。
因此,我尝试在编译着色器之前设置各种GL状态,包括:
GL_BLEND
GL_CULL_FACE
GL_DEPTH_TEST
- 多边形偏移
- 混合函数
...但它仍然会在第一次绘制时重新编译。
哪些典型的状态会导致驱动程序重新编译顶点着色器?
我正在使用ARB_debug_output
扩展名,驱动程序给我以下警告:
程序/着色器状态性能警告:程序16中的顶点着色器基于GL状态被重新编译。
因此,我尝试在编译着色器之前设置各种GL状态,包括:
GL_BLEND
GL_CULL_FACE
GL_DEPTH_TEST
...但它仍然会在第一次绘制时重新编译。
哪些典型的状态会导致驱动程序重新编译顶点着色器?
2条答案
按热度按时间mccptt671#
我最近遇到了这个问题。它发生了解除绑定顶点数组对象导致这个警告出现。删除带有
glBindVertexArray(0)
的行后警告信息消失。k10s72fa2#
我解决这个接受保罗.胡克斯的addvice在下面的链接:https://discourse.libcinder.org/t/performance-warning-shader-recompiled/1602
也许这会有所帮助: