OpenGL纹理学习总结

来源:互联网 发布:知乎 mpacc值得读吗 编辑:程序博客网 时间:2024/03/29 15:59

1、创建一个纹理

glGenTextures:在创建纹理的时候,要给纹理起个名字,纹理的名字其实是一个无符号整数,为了防止名字和前面使用的其他名字重复,可以使用函数glGenTextures来返回一个未使用过的名字,然后就可以对这个名字进行操作了。

glBindTexture:使用此函数,将会绑定一个当前要使用的纹理,后续的纹理操作都是对于该纹理进行的。在有了一个纹理名字之后,需要创建纹理,调用该函数,切换到对这个纹理进行操作。

glTexImage2D:将一副图片加到纹理上面,图片的长和宽必须是2的整数次幂。

修改纹理的滤波方式:当需要贴上纹理的地方比当前的纹理大或小的时候,采用怎样的方式(GL_LINEAR,GL_NEARST)。

glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR); 
glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);

别忘了调用glEnable(GL_TEXTURE_2D)来启动纹理。

2、使用纹理
在使用的时候,需要在绘制之前指定使用哪一个纹理,调用函数glBindTexture来指定。还需要为每个顶点指定一个纹理坐标,不论纹理图片的大小,纹理坐标都在0~1之间,从左到右,从下到上,坐标的原点是左下角。

原创粉丝点击