[英]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.