“Yeah It’s on. ”
前言
前篇文章介绍了libpng库。(关于OpenGL如何加载显示PNG,可参考此篇) 我在使用时却错误的显示为黑色
正文
这个问题困扰了我好久,反反复复看了好几遍自己的代码,用gDEBugger调试了N次,最后终于找到了原因。 问题出在设置纹理过滤模式的时候使用了 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR) 然而加载PNG的时候没生成MIPMAP
解决方法有二种:
- 过滤模式模式换成GL_LINEAR:
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR) - 调用glGenerateMipmap(GL_TEXTURE_2D)生成MIPMAP 最后纹理正常显示出来了 :)