iPad2上的texture2d问题

时间:2011-04-22 20:32:06

标签: ipad opengl-es

我们遇到的情况是,对于同一个着色器,在使用GL_LUMINANCE时,iPad1上的纹理呈现正常,但iPad2上没有呈现。我们已经将它跟踪到片段着色器中的texture2D调用。由iPad1上的texture2D调用返回的vec4包含纹理的强度值,但是iPad2上texture2D返回的vec4是不变的。

看起来其他人也看到了这个问题[http://www.imgtec.com/forum/forum_posts.asp?TID=1267&PID=4307]。但是,他们正在使用GL_HALF_FLOAT_OES,而我们正在使用GL_FLOAT。

是否有其他人看过这个问题,是否有解决方法?

1 个答案:

答案 0 :(得分:1)

对于GL_LUMINANCE浮点纹理,iPad 2将亮度值剪辑为0.0 - 1.0,因此您应在调用glTexImage2D之前规范化纹理数据。但是,在iPad 1上,您可以将任何浮点纹理值传递给着色器。

不确定为什么会出现这种不一致的情况(GL驱动程序错误?)但是如果有人有一个很好的解释那就太棒了。