纹理学习总结
纹理
每个定点都需要绑定纹理坐标。什么是纹理坐标?纹理坐标有什么特点
- 纹理坐标的范围是0到1,不论是x轴还是y轴。
- 用纹理坐标获取纹理颜色的过程叫做采样。
纹理过滤
1. 由于纹理坐标不依赖与分辨率,也就是说OpenGL如果将一张照片映射到一个很大的面上则会清晰地看到像素点,这时候过滤就显得很重要了。
2. OpenGL默认的过滤方式是邻近过滤,即选择纹理部分最接近需要映射的纹理坐标的那个像素作为样板像素。(此处需要详细理解一下)
3. OpenGL所支持的另一种过滤方式为线性过滤
纹理单元
1. 纹理采样器可以分配位置值称之为纹理单元(Texture Unit)。通常位置为0的纹理单元对应GL_TEXTURE0,通过glGetUniformLocation函数即可获取相应纹理单元的位置值。
所以在使用前激活相应的纹理单元:
glActiveTexture(GL_TEXTURE0);
通过glBindTexture绑定相应的纹理单元
glBindTexture(GL_TEXTURE_2D, texture);