我有一个设置,我使用glReadPixels渲染到FBO并回读主机PBO。
为了不用glMapBuffer im使用FENCE_NV扩展来阻止渲染线程来检查状态。
但是,如果我在glReadPixels之后调用glSetFenceNV,那么无论我等多久,glTestFenceNV总会返回false。
另一方面,如果我将glSetFenceNV放在glReadPixels之前,那么一切正常,但是栅栏只会发出渲染状态,而不是传回主机内存,glMapBuffer可能仍会阻塞。
为什么它的行为如此?
答案 0 :(得分:0)
似乎我必须在glReadPixels之后调用glFlush,否则它将无效。