使用天空盒时常遇到缝隙无法消除的问题,最简单的方法是使用边缘截取(GL_CLAMP_TO_EDGE):总是忽略边界。处于纹理边缘或者靠近纹理边缘的纹理单元都用作纹理计算,但是不包括边界上的纹理单元。 但这一参数只出现在OpenGL1.2及其后续版本中,而我们使用的VC中的opengl开发包仅为1.1,所以编译时VC会报错:GL_CLAMP_TO_EDGE没有声明。 事实上由于我们目前系统中使用的opengl库文件均为最新版本,只是VC附带开发包为1.1,而GL_CLAMP_TO_EDGE本质上仅为一个宏定义,所以我们可以在代码中不使用该宏定义而直接使用数值0x812F来替代,同样可以设置成边缘截取的这一个功能。 即使用: glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_WRAP_S,0x812F); 作为如下代码的替代品。 glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_WRAP_S,GL_CLAMP_TO_EDGE); 转自:http://hi.baidu.com/asky007/blog/item/c35be207a1bb28cb7b8947dc.html |
opengl中天空盒缝隙消除的解决办法!
最新推荐文章于 2023-01-15 16:21:56 发布
[转]opengl中天空盒缝隙消除的解决办法!
2010-01-21 19:06