2

我需要一个以给定纹理开始的着色器,然后每一帧动画都对着色器的前一个输出加上其他输入进行操作。

如何组织帧缓冲区,以便每个帧都可以访问前一帧的输出,而不必从 CPU 来回移动缓冲区?

4

1 回答 1

2

OpenGL ES 2.0 具有帧缓冲区对象 (FBO),您可以使用它直接渲染到纹理中,并且可以使用该纹理作为下一次迭代的输入。

这是唯一的方法。使用两个 FBO 和两个纹理,每个纹理都附加到每个 FBO。从一个纹理读取并写入另一个纹理,然后交换纹理,因此您从最后写入的读取,并写入第一个。这称为“乒乓”渲染。

于 2010-08-07T17:57:47.687 回答