glutSwapBuffers实际上做了什么?

9
前缓冲区指针现在是指向后缓冲区吗?或者前缓冲区的内容被后缓冲区更新了?如果是这种情况,整个内容块会被更新还是只有更改的内容被更新?
opengl.org 上 glutswapbuffers 的描述是:在当前窗口使用的图层上执行缓冲区交换。具体来说,glutSwapBuffers 使得当前窗口使用的图层的后缓冲区的内容成为前缓冲区的内容。然后,后缓冲区的内容变得未定义。
最后一句话是什么意思?后缓冲区现在指向空吗?
2个回答

6

最后一句话的意思是什么?

这意味着,在交换后,后备缓冲区的内容可能是任何东西。它可能是前缓冲区、随机数据、你度假时的照片等等。它是未定义的,您不应该对它做出任何假设。


2
这意味着,glut不能保证在后备缓冲区变成前缓冲区之后,现在的后缓冲区将会是有意义的,比如你认为它包含了之前在“旧”前缓冲区中的信息。我想,这是因为否则你需要第三个缓冲区以这种方式交换缓冲区,这在高性能3D中是不可接受的。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接