Open GL ES:呈现黑白色的纹理?

时间:2011-05-24 10:55:51

标签: iphone ipad opengl-es

是否可以使用ES 1.X渲染黑白色的彩色纹理?如果是,怎么样?

2 个答案:

答案 0 :(得分:4)

我唯一能想到的是非常复杂 - 使用GL_COMBINE texEnv模式来执行每像素点积,虽然我似乎无法找到一条路径,不涉及中间FBO并减少RGB通道的精度达到7位。因此,您使用的dot3功能通常用于照明,但由于您不想使用负值,因此最终只有可用范围的一半。你基本上只用向量(0.299,0.587,0.114)点缀产品,并在所有三个通道上输出。

答案 1 :(得分:0)

使用片段着色器将颜色信息转换为灰度。它非常简单,只需添加所有三个通道并将它们分成三个(有更多高级方法,但这种简单方法适用于大多数情况,如果不是所有情况)。