1

我正在尝试使用 GPUImage 库进行图像处理(而不是图像输出到屏幕)。默认情况下,库输出一个 BGRA 纹理。我想改为输出多个单通道/单字节纹理。到目前为止,我一直在为 BGRA 中的每个像素进行多次计算。我已经达到了这种方法的局限性,因为 a)我现在每个像素有超过 4 个返回值,并且 b)将 BGRA-BGRA-BGRA-BGRA..... 去隔行扫描到 BBBB 的开销......, GGGG ..,RRRR ..,AAAA ..,开始真正让我的程序陷入困境。

我知道有一些示例代码可以将多个输入纹理与 GPUImage 一起使用,但我还没有看到多个输出纹理的任何内容。对于单字节输出,我相信我可以使用 GL_ALPHA 纹理(?),所以我猜测将多个纹理绑定到我的过滤器内核中的变量是一个问题。

谢谢!

4

1 回答 1

0

可能您需要的是多个渲染目标(或简称 MRT)。您可以使用 GL_COLOR_ATTACHMENT 检查您的目标硬件支持多少颜色附件。不幸的是,我相信并非所有 iOS 设备都支持(如果有的话)。

于 2013-01-01T09:34:11.983 回答