和纹理映射相关的另一个重要概念是‘过滤’。我们已经讨论了怎样将纹理坐标(这是个0到1之间的分数!)映射到纹素上,纹理贴图中纹素的坐标总是以整数定义的,但是如果纹理坐标映射到纹素上的坐标为(152.34,745.14)怎么办?不明智的方案是将这个坐标舍去小数变为(152,745)。这种方法虽然可以有效果但是在某些情形下效果会很差。一个更好的办法是选取该坐标周围纹素2x2的4个坐标 ( (152,745), (153,745), (152,744) 和 (153,744) ) 并根据他们的颜色做线性插值。线性插值必须体现出坐标(152.34,745.14)和四个坐标的相对距离来。距离近的点的颜色对最终纹素的颜色值影响大,越远影响越小,这样就比开始的方法简单多了。
选择最终纹素的方法叫做’过滤‘,最简单的实现小数纹理坐标取整的方法叫做‘最邻近过滤’,更复杂一点的方法叫做‘线性过滤’,另外一种可能遇到的最邻近过滤方法叫做‘点过滤’。OpenGL支持几种不同类型的过滤方式可以选择。通常效果好的过滤方式需要GPU更强大计算能力并且可能对帧率产生影响,选择不同的过滤方式就需要权衡对过滤效果的需求和对目标设备能力的要求了。