我正在将一个场景渲染成纹理,然后需要以一些简单的方式处理该图像。我目前的做法是使用
我能想到的最简单的设置是显示一个简单的白色四边形,在正交投影中占用整个视口,然后将图像处理部分编写为片段着色器。这将允许许多处理实例并行运行,并访问其所需的任何纹理像素进行处理。
这种方法可行吗?这种做法常见吗?还有更好的方法吗?
glReadPixels()
读取纹理,然后在CPU上进行处理。然而这个过程太慢了,所以我考虑将处理移动到GPU上。我能想到的最简单的设置是显示一个简单的白色四边形,在正交投影中占用整个视口,然后将图像处理部分编写为片段着色器。这将允许许多处理实例并行运行,并访问其所需的任何纹理像素进行处理。
这种方法可行吗?这种做法常见吗?还有更好的方法吗?