GL_NEAREST和GL_LINEAR的选择

来源:互联网 发布:自动麻将机作弊软件 编辑:程序博客网 时间:2024/05/17 04:38

GL_NEAREST和GL_LINEAR

前者表示“使用纹理中坐标最接近的一个像素的颜色作为需要绘制的像素颜色”,

后者表示“使用纹理中坐标最接近的若干个颜色,通过加权平均算法得到需要绘制的像素颜色”。

前者只经过简单比较,需要运算较少,可能速度较快,

后者需要经过加权平均计算,其中涉及除法运算,可能速度较慢(但如果有专门的处理硬件,也可能两者速度相同)。

从视觉效果上看,前者效果较差,在一些情况下锯齿现象明显,后者效果会较好(但如果纹理图象本身比较大,则两者在视觉效果上就会比较接近)。

gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, textures[0].image);        gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);        gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);        gl.bindTexture(gl.TEXTURE_2D, textures[1]);        gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, textures[1].image);        gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);        gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);        gl.bindTexture(gl.TEXTURE_2D, textures[2]);        gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, textures[2].image);        gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);        gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_NEAREST);        gl.generateMipmap(gl.TEXTURE_2D);

第一种
这里写图片描述
第二种
这里写图片描述
第三种
这里写图片描述
来源:http://blog.csdn.net/ypist/article/details/8604863

0 0
原创粉丝点击