好吧,我会尽可能保持简单。我想在着色器程序之间传递数据。我目前正在使用 readPixels 来执行此操作,但我觉得它可能会减慢操作速度,并且我正在探索更快的选项。
我的程序的作用:
- program1 将渲染到画布上。
- program2 在它的着色器中做了一些精彩的操作,我想将这些操作传递给program1。
我的问题:
- 是否可以使用program2中的vbo并将其传递给program1进行渲染?从我下面给出的链接中听起来,您无法跨上下文共享数据,这意味着一个缓冲区中的数据不能用于另一个缓冲区。但也许我错过了一些东西。
- 我相信本文中提到的方法可以通过渲染到画布然后使用 texImage2D 更新program1(将帧缓冲区数据从一个 WebGLRenderingContext 复制到另一个?)来完成我正在寻找的任务。我对么?如果是这样,这会比使用 readPixels 更快吗?(我问是因为如果使用 texImage2D 大致相同我不会打扰)。
预先感谢任何回答的人。