要将纹理映射到三角形上,需要指定三角形的每个顶点各自对应纹理的哪个部分,纹理坐标范围为xy轴上0-1之间,使用纹理坐标获取纹理颜色的过程叫做采样,我们给顶点着色器传入三个纹理坐标,接下来他们会被传入片段着色器中,为每个片段进行纹理坐标的插值。
纹理环绕方式
当纹理坐标设置超过0-1,OpenGL默认的行为是重复这个纹理图像(GL_REPEAT)。
除此之外还有其他的选择:
GL_CLAMP_TO_BORDER需要指定背景的颜色。
上述几种处理方式,可以从只选择某个特定的方向进行(s、t、r分别对应xyz),可以不同方向应用不同的处理方式,使用方法为
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_S,GL_MIRRORED_REPEAT)
第一个参数为纹理的类型,第二个参数是操作的类型(wrap为环绕)以及要处理的轴,第三个参数表示重复的方式。
使用第三种方式时要调用glTexParameterfv,第二个参数为设置的颜色RBGA浮点型数组。
纹理过滤
要将一个很大的物体适配一个分辨率很低的纹理时,许愿哦进行纹理过滤。
一、GL_NEAREST 选择最接近纹理坐标的像素&#x