我对 OpenGL 中的多重缓冲有一些疑问。例如,我有一个程序。它做了以下事情:
- 进行深度预传递,并在着色器存储缓冲区上写入一些信息。
- 使用着色器存储缓冲区上的数据在默认帧缓冲区上绘制一些东西并交换缓冲区,所以我可以看到图片
因为我只创建了一个着色器存储缓冲区。GPU 无法执行下一个帧缓冲区的第 1 步“进行深度预传递”,直到最后一个帧缓冲区完成第 2 步“使用着色器存储缓冲区上的数据”。
这是真的吗?当 GPU 使用多缓冲(假设我在 GPU 上有足够的内存)时,如何有效地使用着色器存储缓冲区。