[英]Linear interpolation with GL_FLOAT and GL_LUMINANCE?
我在iPad 3.显影使用OpenGL ES 2.0应用程式我试图从切换GL_UNSIGNED_BYTE
调用时glTexImage2D()
到GL_FLOAT
为“ type
”,用GL_LUMINANCE
为“ internalFormat
”和“ format
”参数。 (以前的GL_RGBA
)
问题:线性插值现在不存在了。 当你放大时,它非常像素化而不是平滑,就像线性插值一样。 我需要切换到GL_RGBA
而不是GL_LUMINANCE
吗? 使用GL_LUMINANCE
是否会自动禁用插值?
在我的着色器中,我开始于:
highp vec4 tex = texture2D(Texture, TexCoordOut);
就像我之前使用GL_UNSIGNED_BYTE
时所做的那样。 TexCoordOut
是顶点着色器的插值输出。 为什么在切换到亮度和浮动后不再进行插值?
ps我打电话:
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
就在glTexImage2D()
之前,但我的印象是这些调用在 OpenGL ES 2.0 下无论如何都不起作用。
我只记得:当使用 GL_FLOAT 时,GL_LINEAR 在 OpenGL ES 2.0 上不可用,除非支持 GL_OES_texture_float_linear 扩展,它在 iPad 3 及更早版本上不可用。
由于支持 GL_OES_texture_half_float_linear 扩展名,我将不得不考虑使用它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.