是否可以使用OpenGL ES 2.0一次渲染到多个帧缓冲区?
假设我有一个角色,并且需要在渲染最终结果之前对此角色进行一些图像处理。在处理操作之后,所有帧缓冲器将被组合为一个最终帧。例如;
创建5个帧缓冲区(使用glGenFramebuffers, glGenTextures, glGenRenderbuffers
)
我的问题是关于(#1)和(#2)。创建这些缓冲区的步骤如下:
glUniformMatrix4fv, glUniform3f, glBindBuffer, glVertexAttribPointer
等将资源加载到gpu(ligth,骨骼位置等)glDrawElements
我想要的是合并(#1)和(#2),以便一次创建(#3)和(#4),这样就不会像骨骼位置这样的资源两次发送到gpu。
如果添加了额外的图层来进行处理(例如使移动角色发光),骨骼位置等也将发送至该发光程序的gpu。
我想要的是加载资源一,创建多个结果帧缓冲区。
以上逻辑有时可能不正确,如果是这样,请告诉我。
谢谢。
注意:由于我使用的是ES,因此OpenGL标签已删除。