0

虽然 OpenGL 颜色应该介于 0 和 1 之间,但我发现如果将 RGB 元素之一设置为大于 1 的数字,它将导致整个 RGB 值接近白色。这是未定义的行为,还是未记录的行为,或已记录但不为人所知的行为?

例如:

绿色:0,1,0

白色:1,1,1

接近白色:0,500,0

一个元素的值越大,整个 RGB 颜色越接近白色。

如果此行为被隔离到特定平台,我在 iOS 上使用 ES 2.0。

4

1 回答 1

0

对我来说听起来像是一个驱动程序错误(没有输入值的剪辑),并且由于开发人员采取的快捷方式,它会影响其他通道。看起来可能像这样的代码

uint32_t packed_bgra = ((b*0xff) << 24) | ((g*0xff) << 16) | ((r*0xff) << 8) | (a*0xff);

我会提交一份错误报告。

于 2012-12-28T12:12:48.593 回答