OpenGL纹理贴图的基本概概念及API

 
OpenGL纹理贴图的基本概概念及API
载入纹理
       glTexImage2D()
       glEnable(GL_TEXTURE_2D)
       glTexSubImage()
       替换一个纹理帖图常常比直接使用glTexImage重新载入一个新纹理快得多。
       纹理矩阵
       glMatrixMode(GL_TEXTURE)
纹理环境
       glTexEnvi()
glTexEnvf()
       glTexEnviv()
glTexEnvfv()
纹理参数
       glTexParameterfv()
       GL_TEXTURE_MAG_FILTER
       GL_TEXTURE_MIN_FILTER
       基本过滤:
       线性过滤GL_NEAREST
       最邻近过滤GL_LINEAR
       纹理环绕:
       GL_TEXTURE_WRAP_S/GL_TEXTURE_WRAP_T
Mip帖图
 
纹理对象
       纹理对象允许一次载入超过一个的纹理状态(包括纹理图像),以及在它们之间进行快速切换。纹理状态由当前线定的纹理对象维护的,而纹理对象是由一个无符号整数标识的。可用下函数分配纹理对象
       Void glGenTextures(GLsizei n, GLuint *textures)
       为绑定其中一种纹理状态,可调用下面函数:
       Void glBindTexture(GLenum target, GLuint texture)
       当程序终止时,需要删除纹理对象,以完成最后的清理任务。
       glDeleteTextures(TEXTURE_COUNT,textures)
 
各向异性过滤:
       如果我们在进行纹理过滤时考虑了观察角度,那么这种方法就叫各向异性过滤(anisotropic texture filtering)。
       glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_MAX_ANISOTROPY_EXT,fLargest)
 
纹理坐标生成
       glEnable(GL_TEXTURE_GEN_S)
       glEnable(GL_TEXTURE_GEN_T)
       glEnable(GL_TEXTURE_GEN_R)
       glEnable(GL_TEXTURE_GEN_Q)
       可用如下函数设置用于纹理坐标生成的函数或方法:
       Void glTexGenf(GLenum coord, GLenum pname, GLfloat param)
       Void glTexGenfv(GLenum coord, GLenum pname, GLfloat* param)
       物体线性帖图GL_OBJECT_LINEAR
       视觉线性帖图GL_EYE_LINEAR
       球体帖图GL_SPHERE_MAP
       立方体帖图GL_REFLECTION_MAP
              立方体帖图增加了6个新值,它们可以传递到glTexImage2D函数中。GL_TEXTURE_CUBE_POSITION_X,
GL_TEXTURE_CUBE_NEGATIVE_X,
GL_TEXTURE_CUBE_POSITION_Y,
GL_TEXTURE_CUBE_NEGATIVE_Y,
GL_TEXTURE_CUBE_POSITION_Z,
GL_TEXTURE_CUBE_NEGATIVE_Z,
 
多重纹理
       glActiveTexture(GL_TEXTURE1)
 

你可能感兴趣的:(api,textures,filter,object,任务,ext)