我理解texture2D
一般如何运作。我的问题更具体。
在代码片段中:
texture2D(sTexture, texCoord.st)
在texCoord.s
或
texCoord.t
和[0, 1]
他们是否有方形尺寸,或
他们有图像尺寸吗?
如果它们不是[0, 1]
,那么让坐标s
,t
浮动是什么意思?
答案 0 :(得分:4)
在GL_TEXTURE_RECTANGLE
的情况下,Texcoords是正常情况下的标准化浮点数(范围[0,1])和非标准化浮点数(范围[0,w]或[0,h])。
texcoords在从中采样时从不是整数,但总是浮点,因为不是特定的纹素获取,但纹理在某个位置采样,而不仅仅是texel中心。因此,在采样期间,纹理像素定义纹理空间中的矩形斑块,纹理过滤器将定义要使用的采样函数,为整个纹理空间中的每个位置定义结果颜色。例如,如果您在其纹素中心之间进行采样,GL_LINEAR
将在相邻纹素之间进行线性插值。