0

是否可以在不使用片段着色器的情况下仅使用固定管道 openGL 将 RGB 纹理绘制为灰度?

否则我必须创建两种版本的纹理,一种是彩色的,一种是黑白的。

4

2 回答 2

1

我不知道如何使用 RGB 纹理和固定功能管道来做到这一点。

如果您从 RGB 源数据创建纹理但将内部格式指定为 GL_LUMINANCE,OpenGL 将为您将颜色数据转换为灰度。使用标准的白色材料和调制模式。

希望这可以帮助。

于 2013-03-18T01:06:29.183 回答
0

不可以。纹理环境组合器在进行缩放/偏置操作的情况下无法执行点积。也就是说,它总是假装 [0, 1] 值被编码为 [-1, 1] 值。既然你不能把它关掉,你就不能做一个合适的点积。

于 2013-03-18T02:30:04.070 回答